如何在 JavaScript 中执行关联数组/哈希

2022-08-29 22:42:10

我需要使用JavaScript存储一些统计信息,就像我在C#中所做的那样:

Dictionary<string, int> statistics;

statistics["Foo"] = 10;
statistics["Goo"] = statistics["Goo"] + 1;
statistics.Add("Zoo", 1);

在JavaScript中是否有类似的东西?
如何以这种方式存储值?HashtableDictionary<TKey, TValue>


答案 1

使用 JavaScript 对象作为关联数组

关联数组:简单来说,关联数组使用字符串而不是整数作为索引。

创建对象

var dictionary = {};

JavaScript 允许您使用以下语法向对象添加属性:

Object.yourProperty = value;

相同的替代语法是:

Object["yourProperty"] = value;

如果可以,还可以使用以下语法创建键到值对象映射:

var point = { x:3, y:2 };

point["x"] // returns 3
point.y // returns 2

您可以使用 for.. 循环访问关联数组。in 循环构造,如下所示

for(var key in Object.keys(dict)){
  var value = dict[key];
  /* use key/value for intended purpose */
}

答案 2
var associativeArray = {};
associativeArray["one"] = "First";
associativeArray["two"] = "Second";
associativeArray["three"] = "Third";

如果您来自面向对象的语言,则应查看本文