Динамически добавлять данные в карту JavaScript - PullRequest
54 голосов
/ 03 июня 2010

Есть ли способ, которым я могу динамически добавлять данные на карту в javascript. A map.put(key,value)? Я использую библиотеки yui для javascript, но не увидел там ничего, чтобы это поддерживало.

Ответы [ 2 ]

103 голосов
/ 03 июня 2010

Ну, любые функции объектов Javascript вроде как "карта"

randomObject['hello'] = 'world';

Обычно люди строят простые объекты с целью:

var myMap = {};

// ...

myMap[newKey] = newValue;

edit & mdash; проблема в том, чтобы иметь явную функцию "put", состоит в том, что вам придется потрудиться, чтобы сама функция не выглядела как часть карты. Это на самом деле не Javascripty.

13 февраля 2014 года & mdash; современный JavaScript имеет средства для создания свойств объекта, которые не перечисляются, и это довольно легко сделать. Тем не менее, это все еще тот случай, когда свойство "put", перечисляемое или нет, будет требовать имя свойства "put" и сделает его недоступным. То есть на каждый объект остается только одно пространство имен.

28 голосов
/ 04 мая 2017

Javascript теперь имеет специальный встроенный объект под названием Map, который можно вызвать следующим образом:

   var myMap = new Map()

Вы можете обновить его с помощью .set:

   myMap.set("key0","value")

Это имеет преимущество методов, которые вы можете использовать для обработки поиска, например, логическое значение .has

  myMap.has("key1"); // evaluates to false 

Вы можете использовать это перед вызовом .get для вашего объекта Map для обработки поиска несуществующих ключей

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...