我想知道这两者之间有什么区别:
var o = {
name: 'John',
getName: function getName() {
console.log(arguments.callee.name + ' was called');
}
}
o.getName();对“常规”匿名办法的看法:
var o = {
name: 'John',
getName: function () {
console.log('getName was called');
}
}
o.getName();因为很明显第一个似乎有一些好处..。有什么问题吗?
发布于 2013-10-09 11:47:33
有什么问题吗?
是。
arguments.callee被否决了。您应该直接引用getName来获取函数对象。.name是一个非标准属性,不要期望它在每个浏览器中都能工作.我会和
var o = {
name: 'John',
getName: function getName() {
console.log('getName was called');
}
};其中有一个命名函数(这有利于调试调用堆栈),而且log()仍然可以工作。
https://stackoverflow.com/questions/19271053
复制相似问题