Как я могу поместить sh элемент в значение объекта карты es6, которое является массивом? - PullRequest
0 голосов
/ 18 января 2020
let exampleMap = new Map([
  ['example key', ['item in array 1', 'item in array 2']]
]);

Я могу заменить массив строкой, используя set:

exampleMap.set('example key', 'new string replacing the array');

, но как я могу push другую строку в значение массива, чтобы я получил :

['example key', ['item in array 1', 'item in array 2', 'item in array 3']]

Ответы [ 2 ]

1 голос
/ 18 января 2020

карта установила и получает

, вы не можете действительно "pu sh" для карты, потому что это пара ключевых значений, которые являются уникальными, что вы можете сделать, это exampleMap.set ( 'key', 'value') и это будет последний элемент.

что вы можете сделать, это exampleMap.get ("пример ключа"). pu sh ('element); // сначала получаем массив, затем модифицируем его.

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map

1 голос
/ 18 января 2020

Вы можете просто использовать обычный pu sh метод, подобный этому

exampleMap.get("example key").push('item in array 3');

console.log(exampleMap.get("example key")); // ['item in array 1', 'item in array 2', 'item in array 3']

, поскольку массивы имеют ссылку . это означает, что это не значения, которые передаются, а ссылка

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