任何人都可以解释对空对象调用 hasOwnProperty 的作用吗?为什么要使用它?
__hasProp = {}.hasOwnProperty
当我开始在 coffescript 中开发时,我发现了这一点.. Ty
任何人都可以解释对空对象调用 hasOwnProperty 的作用吗?为什么要使用它?
__hasProp = {}.hasOwnProperty
当我开始在 coffescript 中开发时,我发现了这一点.. Ty
hasOwnProperty
不叫。函数名后面没有括号。
__hasProp
是对[MDN]的引用,因为Object.prototype.hasOwnProperty
__hasProp = {}.hasOwnProperty
是一个较短的版本
__hasProp = Object.prototype.hasOwnProperty
现在打电话__hasProp
,例如
__hasProp.call(someObject, 'foo')
比
Object.prototype.hasOwnProperty.call(someObject, 'foo')
我是在开始开发咖啡时创立的。
所以我假设这一行是自动生成的,你可能想知道如果没有人真正需要编写代码,为什么还要创建快捷方式?
将此函数分配给变量避免了查找Object
,Object.prototype
并且Object.prototype.hasOwnProperty
每次您想使用它时。__hasProp
只是一个查找,而不是三个,并且在经常使用时可能会导致性能略有提高。