欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

你可能不知道的JavaScript的new Function()方法

 更新時(shí)間:2014年04月17日 10:40:35   作者:  
JavaScript的精神領(lǐng)袖Douglas Crockford曾說過JavaScript是程序員唯一不需要學(xué)習(xí)就能直接使用的語言. 在編程中確實(shí)是如此

我們大多數(shù)人都使用過JavaScript,近年來隨著各種JavaScript框架的流行使得JavaScript變得更加神奇和容易。"Anonymous (匿名)函數(shù)?不知道那是什么但是看起來和自己所寫的差不多?!?BR>你可能并不知道可以傳給 new Function() 一個(gè)字符串作為函數(shù)的body來構(gòu)造一個(gè) JavaScript函數(shù)。編程中并不經(jīng)常用到,但有時(shí)候應(yīng)該是很有用的.

下面是 new Function 的基本用法:

復(fù)制代碼 代碼如下:

// 最后一個(gè)參數(shù)是函數(shù)的 body(函數(shù)體),類型為 string; 
// 前面的參數(shù)都是 索要構(gòu)造的函數(shù)的參數(shù)(名字) 
var myFunction = new Function('users', 'salary', 'return users * salary'); 

非常簡單,對吧?

問題是:什么時(shí)候適合使用這種方式,而不使用傳統(tǒng)的函數(shù)聲明 function myFnName() 和/或 匿名函數(shù)定義? Andrea Giammarchi 認(rèn)為,最適合使用 這種函數(shù)定義方式的場景是在NodeJS和瀏覽器的全局環(huán)境中:

復(fù)制代碼 代碼如下:

(function(win) { 

 
    // 在全局環(huán)境中執(zhí)行某些操作 

 
})(Function('return this')()); 

如果你曾經(jīng)使用過 new Function模式,歡迎留言和討論!

相關(guān)文章

最新評論