第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

[[1,2,3],[1,2,3]].includes([1,2,3])返回false

[[1,2,3],[1,2,3]].includes([1,2,3])返回false

qq_花開花謝_0 2018-09-03 17:09:55
我現(xiàn)在要對一個(gè)二維數(shù)組進(jìn)行操作,如題,如果不存在就進(jìn)行push操作,所以不是對已經(jīng)存在的數(shù)組去重試過indexOf,返回-1,es6的includes,返回false,有什么原生的方法可以判斷出來么,并且能解釋一下為什么直接的includes不行么
查看完整描述

1 回答

?
侃侃無極

TA貢獻(xiàn)2051條經(jīng)驗(yàn) 獲得超10個(gè)贊

數(shù)組是引用類型,所以 [1,2,3]===[1,2,3] 是 false. 因此 indexOf 和 includes 自然判斷不出來。
如果你數(shù)組內(nèi)部是值類型的話可以

[[1, 2, 3], [1, 2, 3]].filter(function (arr) {    return JSON.stringify(arr) === JSON.stringify([1, 2, 3]);
}).length;

如果這個(gè)值大于 0 說明包含這個(gè)待比較的數(shù)組。

Another update:

[[1, 2, 3], [1, 2, 3]].some(function (arr) {    return JSON.stringify(arr) === JSON.stringify([1, 2, 3]);
});

這次返回 true 就說明包含待比較的數(shù)組。(靈感來自本題的另一個(gè) answer)


查看完整回答
反對 回復(fù) 2018-10-16
  • 1 回答
  • 0 關(guān)注
  • 1409 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號