JavaScript Map.get() — отримати значення за ключем
Метод get() повертає значення за ключем. Якщо такого ключа немає — undefined.
Загальний опис
Ключі порівнюються за строгою рівністю (як ===). Для об'єктів це означає порівняння за посиланням: два однакові на вигляд {id: 1} — різні ключі, бо це різні об'єкти.
Звідси найчастіша помилка новачків: поклали значення з ключем-літералом, а дістати не можуть, бо шукають новим літералом.
автор: NagarD
- Нотатка
-
автор: NagarDget()повертаєundefinedі тоді, коли ключа немає, і тоді, коли значенням є самеundefined. Розрізнити ці випадки допоможе лишеhas().
Переглядачі
| Переглядач | ||||||
|---|---|---|---|---|---|---|
| get | 38+ | 13+ | 8+ | 25+ | 12+ | 11+ |
| Переглядач | ||||
|---|---|---|---|---|
| get | 38+ | yes | yes | 8+ |
Приклади
+ запропонувати свій приклад у пісочниці
Ключі-об'єкти порівнюються за посиланням, а не за вмістом.
const map = new Map();
map.set('theme', 'dark');
console.log(map.get('theme')); // 'dark'
console.log(map.get('missing')); // undefined
// пастка: різні об'єкти — різні ключі
map.set({ id: 1 }, 'перший');
console.log(map.get({ id: 1 })); // undefined!
// правильно — тримати посилання
const key = { id: 1 };
map.set(key, 'перший');
console.log(map.get(key)); // 'перший'
Коментарі
Коментарів ще немає — будьте першим!