Как удалить элемент из массива индексных строк в Typcript

У меня есть:

interface IMap {
[name: string]: string;
}

var map: IMap = {};
map["S"] = "s";
map["C"] = "c";
map["D"] = "d";

Как я могу полностью удалить карту объектов ["S"]? Я не хочу заканчивать нулевым объектом, поэтому использование карты удаления ["S"] не будет работать.

Ответы

Ответ 1

Как я могу полностью удалить карту объектов ["S"]? Я не хочу, чтобы в итоге появился нулевой объект, поэтому с помощью delete map ["S"]

delete полностью очищает его:

interface IMap {
[name: string]: string;
}

var map: IMap = {};
map["S"] = "s";
map["C"] = "c";
map["D"] = "d";

delete map["S"];
console.log(map);
console.log(map["S"],map["non-existent"]); // undefined,undefined
console.log(Object.keys(map)); // ["C","D"]