in 與 hasOwnProperty的區別

inhasOwnProperty的區別javascript

  • in 不只會查找對象實例自身屬性,還會查找其原型屬性
  • hasOwnProperty 只會查找對象實例自身屬性
let obj = {name: 'ys'}
Object.setPrototypeOf(obj,{action:'move'})
console.log('name' in obj) // true    
console.log('action' in obj) // true

console.log(obj.hasOwnProperty('name'))//true
console.log(obj.hasOwnProperty('action'))//false
相關文章
相關標籤/搜索