indexOf()与Javascript中的关联数组的性能?

时间:2013-06-07 12:34:03

标签: javascript arrays performance associative-array indexof

我有一系列与某些数字相对应的值。永远不会有两个值对应于相同的数字。这些数字之间没有差距 E.G.
{a:1,b:2,c:3,d:4} 而不是 {a:1,b:3,c:4,d:7}

现在,我将值存储在数组中并找到该值的索引。数组中的索引是值对应的数字。

假设阵列已预先填充。我的问题是更有效的在Javascript中找到相应的数字

将值存储在数组的特定位置,并使用indexOf()查找索引。

--- ---或

将值和数字存储为关联数组中的键值对。

1 个答案:

答案 0 :(得分:0)

从你说的话...... a应该为零,因为数组从索引零开始而不是1

CASE数字数组:{a:1,b:2,c:3,d:4} for循环是合适的

var a = [];
a[5] = 5; 
for (var i=0; i<a.length; i++) {
    // Iterates over every single numeric indexes from 0 to 5
}

CASE跳过一个值:{a:1,b:3,c:4,d:7}

for..in是合适的

 var a = [];
    a[5] = 5;
    for (var x in a) {
       ignores 0-4,shows only 5
    }

CASE关联数组:indexof是合适的

注意:迭代数组被认为是不好的做法,但不是迭代对象的成员。