如何仅在不存在的情况下将值附加到数组,如果不存在则将其删除?

斯特菲

我有这个 initialArray = [1,2,3,4,5,6]

我想添加这个 [1,2,3]

1 /如果[1,2,3]存在于 中initialArray,我想将其从initialArray.

所以结果将是 [4,5,6]

2 /然后我想[1,2,3]再次添加,现在[1,2,3]已经不存在了initialArray

所以在这种情况下,结果将是 [4,5,6,1,2,3]

3 /现在我想添加[1,2,3,4,5,6]. 所以在这种情况下,结果将是[]

我试图用来.filter()删除现有的值,它的工作原理。但是如果值不存在,我就不能“连接”。我无法做到这两点

我能怎么做?

塔兰·沃拉
const initialArray = []; // your initial array
const add = []; // stuff you want to add

const { filtered, toAdd }  = initialArray.reduce((acc, curr) => {
    const index = acc.toAdd.findIndex(v => v === curr);
    index === -1 ? acc.filtered.push(curr) : acc.toAdd.splice(index, 1); 
    return acc;
}, { filtered: [], toAdd: [...add] });

const final = [...filtered, ...toAdd];

如果你的 initialArray 有重复的值,你可以这样做,

const initialArray = [...new Set(initialArrayWithDuplicates)];

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

仅在不存在的情况下如何将对象添加到数组

如果不存在,则将 HTML 附加到 div

仅在不存在int的情况下将int添加到arraylist

仅在不存在的情况下将行添加到Pandas DataFrame

检查值是否存在于集合或数组中,如果不存在,则将其添加

比较php中数组中的值-如果不存在,则将其添加到json数组中

如何创建数组(如果尚不存在)然后将数据附加到Firestore中的数组?

如果不存在,则将对象附加到数组 elasticsearch

如果键不存在,则将值推入数组

SQLiteDatabase仅在尚不存在的情况下添加

仅在不存在的情况下插入记录

仅在不存在的情况下插入数据

如何从数组中删除一个值(如果存在)或如何将其推送到数组(如果不存在)?

如果不存在,则将输入中的值添加到数组

如果不存在重复值,则将类/对象添加到数组列表

从数组中删除一个值(如果存在)或不存在将其推送到数组

Mongodb:如果值不存在,如何将值添加到数组,但如果值存在,则更新值

Linux Shell脚本:仅在程序存在时运行,如果不存在则将其忽略

仅在源目录中不存在的情况下删除目标目录中的文件

SQL Record仅在不存在零值的情况下返回

SQL仅在id不存在的情况下将新行插入MYSQL表中

如果不存在则如何创建CSV文件,然后仅将其附加到Python

Scala Slick,仅在不存在的情况下如何创建模式

仅在不存在的情况下如何用Java创建文件?

仅在尚不存在的情况下如何实现方法

仅在不存在特定Cookie的情况下,如何运行此JavaScript函数和HTML

如果键不存在,则创建数组,如果键已存在,则将值推入相同的键

如果不存在,则将行追加到文件

如果不存在,则将http://添加到NSURL