--- title: Map.prototype.set() slug: Web/JavaScript/Reference/Global_Objects/Map/set translation_of: Web/JavaScript/Reference/Global_Objects/Map/set ---
Метод set()
добавляет объекту {{jsxref("Map")}} новый элемент или обновляет существующий с указанными значениями key
и value
.
myMap.set(key, value);
Объект {{jsxref("Map")}}.
set()
var myMap = new Map(); // Добавление нового элемента объекту Map myMap.set('bar', 'foo'); myMap.set(1, 'foobar'); // Обновление существующего элемента myMap.set('bar', 'baz');
set()
Так как метод set()
возвращает объект Map
, Вы можете последовательно применять метод set()
как в примере ниже:
// Последовательно добавляет новые элементы в myMap:
myMap.set('bar', 'foo')
.set(1, 'foobar')
.set(2, 'baz');
Спецификация | Статус | Комментарий |
---|---|---|
{{SpecName('ES2015', '#sec-map.prototype.set', 'Map.prototype.set')}} | {{Spec2('ES2015')}} | Initial definition. |
{{SpecName('ESDraft', '#sec-map.prototype.set', 'Map.prototype.set')}} | {{Spec2('ESDraft')}} |
{{CompatibilityTable}}
Feature | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|---|
Basic support | 38 | {{CompatVersionUnknown}} | {{CompatGeckoDesktop("13.0")}} | 11 | 25 | 7.1 |
Feature | Android | Chrome for Android | Edge | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|---|
Basic support | {{CompatNo}} | 38 | {{CompatVersionUnknown}} | {{CompatGeckoMobile("13.0")}} | {{CompatNo}} | {{CompatNo}} | 8 |
Map.prototype.set
возвращал undefined
и не был доступен вызов его в цепочке. Это было поправлено ({{bug(1031632)}}). Данное поведение было также обнаружено в Chrome/v8 (issue) и IE11.