从数组中删除值

Remove value from array

我想弄清楚如果你向一个数组添加值然后出现相同的值你如何将它推到同一个数组而不是将它推上并从数组中删除重复的值.

下面是我的代码:

if (!_.includes(scope.index, val)) {
    scope.index.push(val);
} else {
    _.remove(scope.index, val);
   console.log(scope.index);
}

您必须使用谓词函数调用 _.remove(),该函数检查当前元素是否等于 val:

_.remove(arr, x=> x === val)

在JS中就这么简单

if ( scope.index.indexOf( val ) != -1 )
{
  scope.index.push( val );
}

删除推送的值

var index = scope.index.indexOf( val );
scope.index.splice(index,1);