首頁  >  問答  >  主體

javascript - angularjs裡有沒有類似java中removeall的方法?

在java中如果我有一個list A 和一個list B 我想把A裡的B元素全部去除
可以A.removeALL(B)
但是在angularjs裡這種方法並不認,所以有點懵,網路上也找不到類似的方法,請問只能自己寫一個方法了嗎?還是有什麼別的方法功能等同於removeall的?

PHP中文网PHP中文网2710 天前643

全部回覆(1)我來回復

  • 过去多啦不再A梦

    过去多啦不再A梦2017-05-19 10:42:45

    是這樣的, A.removeALL(B)這種方法, 不是angularjs的方法, 也不是原生js的方法. 並非java有的它都有.
    使用原生js實現個這樣的方法其實很簡單.
    徒手寫了個js,如下:

    function removeAll(array){
        const _this = this;
        array.forEach(function(v) {
            const i = _this.indexOf(v);
            i >= 0 && _this.splice(i, 1);
        });
    }
    let a = [1,2,3,4,5,6,7,8,9,10];
    let b = [1,3,5,7,9];
    removeAll.call(a,b);
    console.log(a); // [2, 4, 6, 8, 10]

    回覆
    0
  • 取消回覆