CNode

javascript array 元素为对象时获取下标

问答
MMirwangsir发布于11 年前最后回复11 年前7 回复8455 浏览0 收藏

var test = [ {'id': 3, 'value': 1}, {'id': 1, 'value': 1}, {'id': 15, 'value': 1}, {'id': 8, 'value': 1}, ] 除用遍历获取id为8的下标外,还有没有更高效的获取下标的方式?

查看回复

回复 (7)

N
nunnly#1·11 年前

遍历

M
Mirwangsir#2·11 年前

@nunnly 仅有的方式吗?

M
Mirwangsir#3·11 年前

我暂时有两种考虑,大量数据先无判断遍历存入对象,再判断;数据少,就直接在遍历的过程中判断

A
alsotang#4·11 年前

如果数据量真的很大,不想使用遍历的话,那么建议建立一个索引变量。以 id 为 key,在数组中的索引为 value。 否则也只能遍历了。 数据库在面对这种情况时,没有索引也只能遍历。

L
leapon#5·11 年前

如果数据量真的很大很大, 可以考虑存到mongodb,用$elemMatch查找。

M
Mirwangsir#6·11 年前

@alsotang 对,3楼里我的第一种方案就是这个

M
Mirwangsir#7·11 年前

@leapon 好的,需要的话,我试下,暂时还用不到

参与回复
登录后即可参与回复。登录