В этой статье мы узнаем, как удалить элемент с карты.

В JavaScript очень часто удаляют элемент с карты.

Проблема

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

Теперь давайте определим карту следующим образом:

// Map
const map = new Map([
    ['name', 'John'],
    ['age', 30],
]);

console.log(map);
// Map(2) { 'name' => 'John', 'age' => 30 }

И мы хотим удалить только элемент с нашей карты, поэтому вывод будет таким:

Map(1) { 'age' => 30 }

Если мы удалили элемент имени

Как решить эту проблему?

К счастью, на карте уже есть функция, которая удаляет элементы, вызовите delete(), все, что вам нужно сделать, это использовать функцию delete() и передать элемент, который вы хотите удалить.

Удалить элемент с помощью метода delete

Как мы уже говорили, вы можете использовать метод delete() для удаления элемента с карты.

Пример

// Map
const map = new Map([
    ['name', 'John'],
    ['age', 30]
]);

// Print before deleting
console.log(map);

// Delete element
map.delete('name');

// Print after deleting
console.log(map);

Вывод

Map(2) { 'name' => 'John', 'age' => 30 }
Map(1) { 'age' => 30 }

Ну, а что если я хочу удалить первый элемент, но не знаю его ключа? Что мне делать?

Удалить первый элемент карты

Теперь отвечу на предыдущий вопрос, если вы хотите удалить первый элемент и не знаете его ключ.

Вы можете использовать Array.from(), чтобы получить все элементы в массиве, а затем вы можете легко получить первый элемент.

// Map
const map = new Map([
    ['name', 'John'],
    ['age', 30]
]);

// Array with elements
const array = Array.from(map);

// First element
const firstEle = array[0];

// Print
console.log(firstEle);

Теперь, когда мы получили первый элемент, мы можем удалить его с помощью delete.

// Map
const map = new Map([
    ['name', 'John'],
    ['age', 30]
]);

// Array with elements
const array = Array.from(map);

// First element
const firstEle = array[0];

// Delete first element by his key `[0]`
map.delete(firstEle[0]);

// Print
console.log(map);

Вывод

Map(1) { 'age' => 30 }

Спасибо за чтение

Спасибо за чтение моего блога. 🚀 Больше информации вы можете найти в моем блоге и связаться в Твиттере