gpt4 book ai didi

Javascript - 在数组中插入唯一元素 : Multidimensional check x Temporary unidimensional array

转载 作者:行者123 更新时间:2023-12-03 09:38:38 25 4
gpt4 key购买 nike

我不知道这是否是一个愚蠢的问题,但它来了:

想象一个无序对象的数组,例如: [{id:4,名称:“a”},{id:2,名称:“b”},{id:3,名称:“ee”},{id:1,名称:“fe” },.....].

这个数组是使用 javascript 在循环内动态创建的,但是,每次我将某些内容推送到数组时,我都必须检查是否存在具有相同 id 的对象,并且只推送新的对象。

哪个更快:

1) 在每次循环时手动检查整个数组。

2) 仅使用 ids 创建一个临时一维数组,并使用 indexOf 检查新对象 id 是否存在,然后,如果临时数组中不存在,请将其添加到原始数组中。

最佳答案

怎么样

var a = []
var o = { id:10, name:"xyz" }
if(typeof a[o.id]=="undefined") {
a[o.id] = { name:o.name }
}

?对于大多数机器来说这应该是最快的。或者不改变你的对象结构

a[o.id] = { id:o.id, name:o.name }

但更好的方法是

function getA(i) { if (typeof a[i] == "undefined") return null;
return { id:i, name:a[i].name }; }

关于Javascript - 在数组中插入唯一元素 : Multidimensional check x Temporary unidimensional array,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31250448/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com