我有一个非常大的硬编码索引数组,我想轻松地将其转换为关联数组,以便查找速度更快。
var arr = ["a", "b", "c"];
现在我正在遍历 arr 并将它的值与一个值进行比较以查看是否存在匹配项。现在我有数百个元素,它变得相当慢,如果有一个关联数组会更快。
看来我做不到
var arr = {"a", "b", "c"};
我真的不能添加一个值,因为它太慢了。
当然,我可以将元素复制到关联数组或对数组进行排序并进行二分查找,但如果能够为数组元素分配一个默认值并使用上面的语法会容易得多。
我想这不可能吧?
最佳答案
var mapLookup = arr.reduce(function (accumalator, value) {
accumalator[value] = true;
return accumalator;
}, {});
关于javascript - 定义没有值的关联数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14918133/