function, new function() 및 new Function()

1197 단어
함수는 자바스크립트의 일등 시민으로 function 키워드와 Function () 이라는 내장 대상을 제공합니다.function과 new function (), 그리고 new Function () 사이의 차이는 항상 사람을 괴롭힌다. 다음은 간단한 학습 소감이다.

function


가장 자주 사용하는function 용법은 함수를 정의하는 것이다
var foo = function(){
            var temp = 100;
            this.temp = 200;
            return temp + this.temp ;
        };

     alert(typeof foo);
     alert(foo());
     
// 
function foo(){
    var temp = 100;
    this.temp = 200;
    retrun temp + this.temp;
}
//   function  300
//  , ( ) , , 。

new function()


사실 이것은 함수가 아니라 사용자 정의 대상이고 익명의 대상이라는 것을 성명하는 것이다.
var foo = new function(){
        var temp = 100;
        this.temp = 200;
        return temp + this.temp;
     };
     alert(typeof foo);
     alert(foo.temp)
     alert(foo.constructor());
     
 //   Objcect 200 300
 //  foo , 

new Function


Function은 시스템에 내장된 함수 객체입니다.이 방법을 사용하여 함수를 성명합니다.
var foo = new Function('var temp = 100; this.temp = 200; return temp + this.temp;');
alert(typeof foo);
alert(foo());

// , , 
// new  , 
//ps: , , 。

좋은 웹페이지 즐겨찾기