Use JavaScript objects as associative arrays.
Associative Array: In simple words associative arrays use Strings instead of Integer numbers as index.
Create an object with
var dictionary = {};
Javascript allows you to add properties to objects by using the following syntax:
Object.yourProperty = value;
An alternate syntax for the same is:
Object["yourProperty"] = value;
If you can also create key to value object maps with the following syntax
var point = { x:3, y:2 };
point["x"] // returns 3
point.y // returns 2
You can iterate through an associative array using the for..in loop construct as follows
for(var key in Object.keys(dict)){
var value = dict[key];
/* use key/value for intended purpose */
}
Если у Вас нет определенной причины не к, просто используйте обычный объект. На свойства объектов в JavaScript можно сослаться с помощью синтаксиса стиля хеш-таблицы:
var hashtable = {};
hashtable.foo = "bar";
hashtable['bar'] = "foo";
И foo
и bar
на элементы можно теперь тогда сослаться как:
hashtable['foo'];
hashtable['bar'];
// or
hashtable.foo;
hashtable.bar;
, Конечно, это действительно означает, что Ваши ключи должны быть строками. Если они не строки, они преобразовываются внутренне в строки, таким образом, это может все еще работать, YMMV.
Так как каждый объект в JS ведет себя как - и обычно реализуется как - хеш-таблица, я просто иду с этим...
var hashSweetHashTable = {};
var associativeArray = {};
associativeArray["one"] = "First";
associativeArray["two"] = "Second";
associativeArray["three"] = "Third";
Если вы переходите с объектно-ориентированного языка, вам следует прочитать эту статью .
Если вам нужно, чтобы ваши ключи были любыми объектами, а не только строками, то вы можете использовать мой jshashtable.