簡単にFunctionとfunctionを述べます.

1517 ワード

関数はJavaScriptの中で重要な言語要素であり、Functionキーと内蔵オブジェクトFunctionを提供しています.以下はその可能な使い方とそれらの関係です.
使い方一
var foo01 = function() //or foo01 = function()
{
     var temp = 100;
     this.temp = 200;
     return temp + this.temp;
}

alert(typeof(foo01));
alert(foo01()); 
実行結果:
機能
300
最も一般的なfunctionの使い方は、JavaScript関数を指定します.二つの書き方で表現されている運行効果は全く同じですが、後者の書き方はより高い初期化優先度があります.大拡号内の変数の作用領域では、thisはfoo 01の所有者であるwindowオブジェクトを指す.
使用方法二:
var foo02 = new function()
{
     var temp = 100;
     this.temp = 200;
     return temp + this.temp;
}

alert(typeof(foo02));
alert(foo02.constructor());   
実行結果:
object
300
これはpuzleのfunctionの使い方を比較して、関数を決めたようです.しかし、実際にはこれはJavaScriptのユーザーによってカスタマイズされたオブジェクトですが、ここは匿名クラスです.この用法と関数自体の使用にはほとんど関係がありません.このスコープ自体を指す変数のスコープは、大拡散符号において構築されます.
使用方法3:
var foo3 = new Function('var temp = 100; this.temp = 200; return temp + this.temp;');
alert(typeof(foo3));
alert(foo3()); 
実行結果:
機能
300 
システム内の関数オブジェクトを使用して関数を構築します.これは、効果と初期化の優先度が同じで、関数体が文字列で与えられています.
使い方四:
var foo4 = Function('var temp = 100; this.temp = 200; return temp + this.temp;');

alert(typeof(foo4));
alert(foo4());
実行結果:
機能
300
この方式はあまり使われないので、効果と方法は3つと同じですが、newで生成しても副作用があるかどうかは分かりません.これはJavaScriptの最大の特徴を表しています.省けば省ける.