在众多JavaScript 源代码中,我看到了Object.prototype.hasOwnProperty
从静态引用调用的偏好,如下例所示:
var hasOwnProp = Object.prototype.hasOwnProperty;
//...
if ( hasOwnProp.call(myObj, 'prop') ) {
doSomethingWith(myObj);
}
为什么它优于调用对象实例的hasOwnProperty
方法:
//...
if ( myObj.hasOwnProperty('prop') ) {
doSomethingWith(myObj);
}