JavaScript in 運算子

admin發表於2018-09-01

此運算子可以判斷物件是否含有指定屬性。

如果從in運算子名稱闡述,就是一個屬性是否存在於指定的物件內,一個意思。

如果存在,返回true,否則返回false。

語法結構:

[JavaScript] 純文字檢視 複製程式碼
property in object

引數解析:

(1).property:必需,屬性名稱。

(2).object:必需,一個物件。

程式碼例項:

[JavaScript] 純文字檢視 複製程式碼執行程式碼
let obj={
  webName:"螞蟻部落",
  url:"softwhy.com"
}
console.log("url" in obj);

程式碼執行效果截圖如下:

a:3:{s:3:\"pic\";s:43:\"portal/201809/01/104018czlty11gg8rkg4f4.png\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

url屬性確實屬於物件obj,所以運算子返回true。

[JavaScript] 純文字檢視 複製程式碼執行程式碼
let arr=["螞蟻部落",6,"softwhy.com","青島市南區"];
console.log(1 in arr);

程式碼執行效果截圖如下:

a:3:{s:3:\"pic\";s:43:\"portal/201809/01/104054euyymom11imnf9lo.png\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

列印結果為true,陣列也是物件,可以認為陣列的索引是特殊的屬性。

a:3:{s:3:\"pic\";s:43:\"portal/201809/01/104123j4exapockwp0nodz.png\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

in運算子不但可以檢測自有屬性,也可以檢測繼承自原型鏈的屬性。

相關文章