Javascript 两种 function 定义的区别
生活随笔
收集整理的這篇文章主要介紹了
Javascript 两种 function 定义的区别
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
大家都知道Javascript 有兩個種定義Function的方法非常常用。例如?
function a(){alert("a")} var a = function(){alert("a")}在javascript中任何函數都是Function的對象,一種我們叫做隱式創建,一種叫顯示創建,
啥叫顯示創建,就是寫出來有個關鍵字NEW,(可以不算很科學的先這樣理解)例如
var test=new Function(cs1,cs2….csN,function-body)注意里面的cs1,cs2..表示參數,而function-body表示函數體,利用函數對象變量名就可以調用該函數,可以這樣調用test(cs1,cs2…),或者賦值給某個變量同樣,可以用那個變量調用。
var test=new Function("cs1","cs2","alert(cs1+cs2)"); test(1,2);效果等同于我們的隱式創建
function test(cs1,cs2) { alert(cs1+cs2); } test(1,2) // var test1=test; //test1(1,2);所以大家隱式對象的時候,一定要想著它是通過new 關鍵字創建的Function對象,
alert(test.toString());就可以輸出函數體的代碼
除此之外,通常情況下,我們還會使用無名函數來創建函數
var test=function(cs1,cs2) { alert(cs1+cs2); } test(1,2);效果等同于我們的顯示創建,那么既然是創建的函數變量是對象,我們就可以給變量添加新的屬性和方法,而在我們的js中方法就是特別的屬性,這點需要注意
test.love="i love php"; alert(test.love); test.php=function(msg) { alert(msg); } test.php("how to study php!");?
轉載于:https://www.cnblogs.com/yeminglong/archive/2013/06/15/3137730.html
總結
以上是生活随笔為你收集整理的Javascript 两种 function 定义的区别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: HDU-4483 Lattice tri
- 下一篇: Javascript 返回上一页