2015-01-07 12 views
6

ich habe:Wie Element aus Stringindex Array in Typoskript entfernen

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

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

Wie kann ich voll und ganz Artikel Karte entfernen [ „S“]? Ich möchte nicht mit einem Null-Objekt enden, also würde die Verwendung von Delete Map ["S"] nicht funktionieren.

+3

Warum denken Sie 'Karte [Löschen“ S "]' wird eine Null hinterlassen? Sollte es sich nicht wie JS verhalten? Hast Du es versucht? –

+0

Mir wurde gerade klar, dass ich einen Tippfehler hatte und [Object object] beim Drucken des Ergebnisses bekam. Nachdem ich festgestellt habe, dass der Artikel erfolgreich entfernt wurde. – bb2

Antwort

11

Wie kann ich Artikelkarte ["S"] vollständig entfernen? Ich möchte nicht mit einem Null-Objekt am Ende so Karte mit delete [ "S"]

delete tut klar es vollständig:

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"] 
Verwandte Themen