ホームページ  >  記事  >  ウェブフロントエンド  >  JavaScriptの関数の種類にはどのようなものがあるのでしょうか?

JavaScriptの関数の種類にはどのようなものがあるのでしょうか?

WBOY
WBOYオリジナル
2022-06-29 16:30:464671ブラウズ

Javascript 関数の種類: 1. コンストラクター、呼び出された関数を定義するために new キーワードを使用し、デフォルトで新しいオブジェクトを返します; 2. 匿名関数、実際の名前のない関数は、グローバルへの汚染を引き起こしません変数 ; 3. クロージャ関数、別の関数のスコープ内の変数にアクセスする権限を持つ関数; 4. 動的関数、パラメータ リストおよび関数本体は、文字列を通じて動的に指定される関数です。

JavaScriptの関数の種類にはどのようなものがあるのでしょうか?

このチュートリアルの動作環境: Windows 10 システム、JavaScript バージョン 1.8.5、Dell G3 コンピューター。

JavaScript の関数タイプとは

1. コンストラクター関数

JavaScript のコンストラクターは、new キーワードを使用して呼び出される関数を参照し、デフォルトでnew Object,

2. 匿名関数

Javascript の匿名関数とは、実際の名前のない関数を指します。匿名関数を使用しても、グローバル変数が汚染されることはありません。

3. クロージャ関数

JavaScript におけるクロージャ関数とは、別の関数のスコープ内の変数にアクセスする権限を持つ関数のことを指します。クロージャ関数は関数内で作成されることがよくあります。

4. 動的関数

JavaScript における動的関数とは、パラメータ リストと関数本体が文字列によって動的に指定される関数を指します。

例は次のとおりです:

    <script> 
  
    function show(){ 
      alert("第一个。。。"); 
    } 
     
   
    function show(str){ 
    alert("第二个"); 
    } 
    function show(a,b){ 
      alert("第三个。。。"); 
      alert(a+":"+b); 
    } 
     </script> 
 </head> 
<!--  可变参数的函数: 在js中都是可变参数的函数 
<!-- 1 函数虽然定义时是声明成两个参数,但调用时却是可以传入任意个 --> 
<!-- 2 每个函数中,存在一个 默认的数组arguments ,里面存储着本次调用时传入的所有实参 --> 
 <body> 
<!-- 1, 可变参数的演示: --> 
 <script> 
     
    show();//当调用之后,会把前面的冲掉 //undefined:undefined 
    show(111);//当调用之后,会把前面的冲掉 // 11:undefined 
    show("a","b");//当调用之后,会把前面的冲掉//a:b 
    show(1,2,3,4);//1:2 
 </script>

上記の例に基づくと、Js には関数のオーバーロードはありません。関数は定義時に複数の変数を宣言しますが、呼び出し時には任意の数値を渡すことができます。各関数には、この呼び出し中に渡されるすべての実際のパラメータを格納するデフォルトの配列引数があります。

匿名関数

<!DOCTYPE html> 
<html> 
 <head> 
 </head> 
  
 <body> 
<!--   演示JavaScript匿名函数 --> 
  <script type="text/javascript"> 
    var res =function(a,b){//注意是小写func 
    return a+b; 
    };</span> 
    alert("sum="+res(1,2));//sum=3 
    alert("res="+res("abc","def"));//res=abcdef 
     
  </script> 
 </body> 
</html>

動的関数

はじめに: Js の組み込みオブジェクト Function を使用して関数を構築する、construct メソッドの最初のパラメータは「仮パラメータ」、2 番目のパラメータは「関数本体」です。

<span style="font-size:18px;"><!DOCTYPE html> 
<html> 
 <head> 
  <title>DTfunc.html</title> 
   
  <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> 
  <meta http-equiv="description" content="this is my page"> 
  <meta http-equiv="content-type" content="text/html; charset=UTF-8"> 
   
  <!--<link rel="stylesheet" type="text/css" href="./styles.css">--> 
 
 </head> 
  
 <body> 
<!--  利用Js当中内置的对象Function来构造一个函数,构造方法中的第1个参数是“形参”,第2个参数是“函数体”。  --> 
<!-- 该思想类似于Java当中的类反射。我们平时写函数时通常不用,但关键的地方一写,整个程序的功能会变得很活 --> 
  <script> 
  var res=new Function("x,y","var sum=0;sum=x+y;return sum;") 
  var sum=res(12,34);//46 
  var sum=res("abc","bss");//abcbss 
  alert("sum="+sum); 
  </script> 
 </body> 
</html></span>

【関連する推奨事項: JavaScript ビデオ チュートリアル Web フロントエンド ]

以上がJavaScriptの関数の種類にはどのようなものがあるのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。