我正在嘗試使用arr.includes(item)。如果項目是數組的一個元素,該函數應該返回True。但它似乎不能用多維數組來完成。看看這張截圖(在控制檯上運行節點):Arr.includes(item) - 我可以使用多維數組嗎?
我得到了我的谷歌瀏覽器類似的結果。
是因爲它是EC6功能,還沒有完全實用?
沒有關於Mozille page上這樣的問題的信息。
我正在嘗試使用arr.includes(item)。如果項目是數組的一個元素,該函數應該返回True。但它似乎不能用多維數組來完成。看看這張截圖(在控制檯上運行節點):Arr.includes(item) - 我可以使用多維數組嗎?
我得到了我的谷歌瀏覽器類似的結果。
是因爲它是EC6功能,還沒有完全實用?
沒有關於Mozille page上這樣的問題的信息。
不,你不能使用它在深層結構,因爲它執行===
測試,檢查該操作數是相同對象,這種情況發生不是兩個(不同的)對象具有相同的內容。
在您鏈接到的MDN頁面上有一個polyfill,您可以在sameValueZero()
嵌套函數中看到===
測試。因爲對象傳遞給.includes
let a = [0, 1];
let b = [1, 2];
let c = [a, b];
c.includes(b);
> true
真的是是中都包含的c
相同的對象:
基於上述原因,這實際上將返回true。
nope,因爲'includes()'通過身份進行比較,而不是(某些)相等。選中這個:'[0,1] === [0,1]'這也是不正確的。 – Thomas
您將不得不使用'array.some' +'array.every'組合的組合。 – Rajesh
Array.includes()在Internet Explorer中不起作用。 –