// named function expression var add = function add(a, b) {
return a + b; };
// anonymous function var add = function (a, b) {
return a + b; };
当省略第二个 add,它就成了无名字的函数表达式,这不会对函数定义和调 用语法造成任何影响。带名字和不带名字唯一的区别是函数对象的 name 属性 是否是一个空字符串。name属性属于语言的扩展(未在ECMA标准中定义), 但很多环境都实现了。如果不省略第二个add,那么属性add.name则 是"add", name 属性在用 Firebug 的调试过程中非常有用,还能让函数递归调用自身, 其他情况可以省略它。
时间: 2024-10-08 05:05:14