亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何按順序檢查數組1中的每個值,存在于數組2中并刪除它?

如何按順序檢查數組1中的每個值,存在于數組2中并刪除它?

Cats萌萌 2021-08-20 19:02:10
我想取第一個數組的第一個值并檢查第二個數組中是否存在,然后將其刪除。例如,我想取數字 41 并刪除它,如果它存在于下面的任何 3 個數組中,如果不取數字 5,依此類推https://drive.google.com/open?id=1JcM5gO-uo_KtUWX8SBTWLV-SMM7iPyhTfor(var i=0;i<array1.length;i++) {  var num = array1[i];  console.log('Num',num);  for(var j=0; j<array2.length; j++) {    var eacharr = array3[j];    for( var p = 0; p < eacharr.length; p++){      var number = eacharr[p];      if ( number === num) {        eacharr.splice(i, 1);        p--;      }    }    console.log(eacharr);  }}
查看完整描述

2 回答

?
梵蒂岡之花

TA貢獻1900條經驗 獲得超5個贊

我同意Code Maniac的回答,他的方法很聰明。Array.prototype.includes()判斷當前數組是否包含指定值,如果是則返回true,否則返回false。


arr1 = [1, 2, 1, 3]

arr2 = [1, 3, 4]

function filterArr(arr1, arr2) {

    return arr1.filter(item => !arr2.includes(item))

}

console.log(filterArr(arr1, arr2));


查看完整回答
反對 回復 2021-08-20
?
BIG陽

TA貢獻1859條經驗 獲得超6個贊

在循環時改變數組不是一個好習慣,要么使用新數組推送值,要么使用filterandincludes


let a = [1,5,9,19, 4, 8 ,172]

let b = [5, 15,28, 99, 19]



let final = a.filter(val=> !b.includes(val))


console.log(final)


查看完整回答
反對 回復 2021-08-20
  • 2 回答
  • 0 關注
  • 190 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號