在ES6中,可以使用Object.prototype.hasOwnProperty()
方法來判斷一個對象是否擁有某個屬性。該方法會返回一個布爾值,指示對象是否具有指定名稱的屬性。例如:
const obj = { name: 'Alice', age: 25 };
console.log(obj.hasOwnProperty('name')); // true
console.log(obj.hasOwnProperty('gender')); // false
另外,ES6中還引入了in
操作符來判斷對象是否具有某個屬性。使用in
操作符時,如果對象或其原型鏈中存在指定的屬性,則返回true
,否則返回false
。例如:
const obj = { name: 'Alice', age: 25 };
console.log('name' in obj); // true
console.log('gender' in obj); // false
需要注意的是,in
操作符可以判斷對象的屬性是否存在,包括對象的原型鏈上的屬性。而hasOwnProperty()
方法則只判斷對象自身是否具有該屬性。