标签:
函数也是对象。每个函数都是 Function 类型的实例,而且都与其他引用类型一样具有属性和方法。
由于函数是对象,因此函数名实际上也是一个指向函数对象的指针,不会与某个函数绑定。
1 function sum (num1, num2) { 2 return num1 + num2; 3 }
这与下面使用函数表达式定义函数的方式几乎相差无几。
1 var sum = function(num1, num2){ 2 return num1 + num2; 3 };
以上代码定义了变量 sum 并将其初始化为一个函数。有读者可能会注意到, function 关键字后面没有函数名。
这是因为在使用函数表达式定义函数时, 没有必要使用函数名,通过变量 sum 即可以引用函数。
另外,还要注意函数末尾有一个分号,就像声明其他变量时一样。
函数是对象,函数名是指针
由于函数名仅仅是指向函数的指针,因此函数名与包含对象指针的其他变量没有什么不同。
注意,使用不带圆括号的函数名是访问函数指针,而非调用函数。
标签:
原文地址:http://www.cnblogs.com/k11590823/p/4685405.html