在JavaScript中存储key=>value数组的最佳方法?

2022-08-29 23:51:18

在javascript中存储数组的最佳方法是什么,如何循环使用?key=>value

每个元素的键应该是一个标记,例如 或 just,值应该是 id 的数值。{id}id

它应该是现有javascript类的元素,或者是一个全局变量,可以很容易地通过该类引用。

可以使用jQuery。


答案 1

这就是JavaScript对象的本质:

var myArray = {id1: 100, id2: 200, "tag with spaces": 300};
myArray.id3 = 400;
myArray["id4"] = 500;

您可以使用 for.. 循环浏览它。在循环中

for (var key in myArray) {
  console.log("key " + key + " has value " + myArray[key]);
}

另请参见:使用对象 (MDN)。

在 ECMAScript6 中,还有 Map(请参阅那里的浏览器兼容性表):

  • 对象具有原型,因此映射中有默认键。这可以通过使用map = Object.create(null)从ES5开始绕过,但很少这样做。

  • 对象的键是字符串和符号,其中它们可以是地图的任何值。

  • 您可以轻松获取地图的大小,同时必须手动跟踪对象的大小。


答案 2

如果我对你的理解是正确的:

var hash = {};
hash['bob'] = 123;
hash['joe'] = 456;

var sum = 0;
for (var name in hash) {
    sum += hash[name];
}
alert(sum); // 579