JS的新手,
使用带有函数的对象的简单示例:
var person = {
name: "Bob McBobson",
talk: function descriptiveFunctionName() {alert("Hello");}
};
我注意到您可以命名对象函数(例如,上面的descriptiveFunctionName)
在任何情况下是否需要/有帮助而不是匿名?
在任何情况下是否需要/有帮助而不是匿名?
从ES2015开始,即使您留在那儿,descriptiveFunctionName
您的函数也不会是匿名的,它会带有一个名称(talk
)。ES2015添加了推断的函数名称(name
最后是属性)。在大多数情况下都可以推断出名称,而没有推断出真正真正重要的唯一地方obj.foo = function() { }
(这会使函数使用name ""
,而不是"foo"
)。
另外,如果函数将是递归的或以其他方式引用自身(将自身设置为事件处理程序等),则您可能更喜欢按其名称(在其作用域内)进行引用。
因此,添加名称的原因:
obj.foo = function nameHere() { };
并且希望该函数具有名称而不是""
。本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句