前几天研究了一下echarts,感觉echarts用的太方便了,自己有了重写echarts的念头,网上查了一下,原来echarts这种开发叫JavaScript插件开发,下载下来echarts的源代码研究,发现里面有很多自己不知道的知识,于是开始补知识,就从Javascript函数补起吧。
JavaScript函数在web开发中是缺少不了的,使用过下面形式的函数数不胜数
function 函数名(n个参数){函数体}
也用到过以下使用函数表达式的,但却不知道怎么解释
var 函数名=function(n个参数){函数体}
于是今天研究一下新的对象--匿名函数。
匿名函数,顾名思义就是没有名字的函数。上面的函数表达式中的创建就是一个匿名函数,那么,怎样理解以上的函数表达式呢,等号的右边就是函数的创建,通用的函数是
这样创建的:function 函数名(n个参数){函数体},没有名字当然要把函数名去掉喽,等号的左边是声明变量,把创建的函数赋值给了这个函数名,就好像是C语言的指针一样,函数名会指向这个函数,函数名就如同这个函数。
后面又衍生出来一些用法,例如
alert((function(x,y){return x+y;})(1,3));//4
alert(( new Function("x","y","return x+y;"))(1,3));//4
这又怎样理解呢?
在调用函数表达式是这样的:函数名(n个实参),上面代码的模型是这样的:(匿名函数)(n个实参),上面说过函数名就如同这个函数,现在只是把这个函数填到了它应该的位置。
个人愚见,不喜勿喷。