在JS中按值从数组中删除多个元素

Val*_*riu -2 javascript arrays splice

当我想删除一个元素时,很容易.这是我的功能:

function removeValues(array, value) {
    for(var i=0; i<array.length; i++) {
        if(array[i] == value) {
            array.splice(i, 1);
            break;
        }
    }
    return array;
}
Run Code Online (Sandbox Code Playgroud)

但是如何删除多个元素?

JDC*_*L32 6

这是一个使用ES7的简单版本:

//removing values
let items =[1, 2, 3, 4];
let valuesToRemove = [1,3,4]
items = items.filter((i) => !valuesToRemove.includes(i))
Run Code Online (Sandbox Code Playgroud)

对于ES6的简单版本

//removing values
let items =[1, 2, 3, 4];
let valuesToRemove = [1,3,4]
items = items.filter((i) => (valuesToRemove.indexOf(i) === -1)
Run Code Online (Sandbox Code Playgroud)