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 返回上一页