why Object.hasOwnProperty.call(object, key) code example
Example 1: hasownproperty.call
var foo = {
hasOwnProperty: function() {
return false;
},
bar: 'Here be dragons'
};
foo.hasOwnProperty('bar'); // always returns false
// Use another Object's hasOwnProperty
// and call it with 'this' set to foo
({}).hasOwnProperty.call(foo, 'bar'); // true
// It's also possible to use the hasOwnProperty property
// from the Object prototype for this purpose
Object.prototype.hasOwnProperty.call(foo, 'bar'); // true
Example 2: hasOwnProperty.call js
var foo = {
hasOwnProperty: function() {
return false;
},
bar: 'I belong to foo'
};