Javascript動態執行JS(new Function與eval比較)


new Function與eval可以動態執行JS,只要把拼接好的JS方法,然后以字符串的形式傳入到這兩個函數,可以執行,其中new Function用在模板引擎比較多。

用 Function 類直接創建函數的語法如下:

var function_name = new function(arg1, arg2, ..., argN, function_body)

在上面的形式中,每個 arg 都是一個參數,最后一個參數是函數主體(要執行的代碼)。這些參數必須是字符串。

比如:

function callAnotherFunc(fnFunction, vArgument) {
  fnFunction(vArgument);
}
var doAdd = new Function("iNum", "alert(iNum + 10)");
callAnotherFunc(doAdd, 10);    //輸出 "20"

參考:

http://www.jb51.net/article/35642.htm

http://www.w3school.com.cn/js/pro_js_functions_function_object.asp


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM