iT邦幫忙

2021 iThome 鐵人賽

DAY 11
0
Modern Web

YDKJS 一邊讀 You Don't Know JS Yet 一邊卡關一邊弄懂的日子 ԅ(≖‿≖ԅ)系列 第 11

Day11 - this&Object Prototypes Ch3 Objects - Contents - Existence

  • 分享至 

  • xImage
  •  

作者說明了兩種確認 object 特定 property 是否存在的方式

  1. in operator:property name 是否 in object
    使用 in operator 會完整搜尋 object ,搜尋範圍包含 object 內部的 prototype 裡有沒有存在我們要找的 property name
var myObj =  {
	food: '燃面'
}
console.log('food' in myObj) // true
console.log('drink' in myObj)  // false

作者提醒我們,由於 in operator 是以 property name 作為搜索,對 array 使用 in operator 時,要記得 array 的 property name 是其 index

var myArr = [2,4,6]
console.log(0 in myArr) // true
console.log(4 in myArr) // false

  1. hasOwnProperty():為 object 內建的一個 prototype function,並不會完整搜尋到 prototype 層
var myObj =  {
	food: '燃面'
}
console.log(myObj.hasOwnProperty('food')) // true
console.log(myObj.hasOwnProperty('drink')) // false

祝大家開開心心河河笑,如果上述理解有誤希望能協助提點~感謝大家 ԅ(≖‿≖ԅ)


上一篇
Day10 - this&Object Prototypes Ch3 Objects - Contents - Getters and Setters
下一篇
Day12 - this&Object Prototypes Ch3 Objects - Contents - Existence - Enumeration
系列文
YDKJS 一邊讀 You Don't Know JS Yet 一邊卡關一邊弄懂的日子 ԅ(≖‿≖ԅ)30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言