1.Object.prototype.hasOwnProperty()
语法
obj.hasOwnProperty(prop)
参数
prop:要检测的属性的 String 字符串形式表示的名称,或者 Symbol
返回值
返回用来判断某个对象是否含有指定的属性的布尔值
作用
所有继承了 Object 的对象都会继承到 hasOwnProperty 方法。这个方法可以用来检测一个对象是否含有特定的自身属性;和 for…in 运算符不同,该方法会忽略掉那些从原型链上继承到的属性。
例:检测了对象 a 是否含有自身属性 prop
a = new Object();
console.log(a.hasOwnProperty('prop')); // 返回 false
a.prop = 'EXO';
console.log(a.hasOwnProperty('prop')); // 返回 true
delete a.prop;
console.log(a.hasOwnProperty('prop')); // 返回 false
⚠️⚠️⚠️即使属性的值是 null 或 undefined,只要属性存在,hasOwnProperty 依旧会返回 true。
a = new Object();
a.propOne = null;
console.log(a.hasOwnProperty('propOne')); // 返回 true
a