Ich habe ein Objekt, und ich möchte alle Werte außer dem, der einen bestimmten Schlüssel entspricht entfernen. Zum Beispiel könnte ich dies tun:JavaScript: Entfernen Sie alle außer 1 Schlüssel aus einem Objekt
function remove(obj, key) {
var value = obj[key]
var ret = {}
ret[key] = obj[key]
obj = ret
}
Oder ich könnte iterieren:
for (var k in obj) {
if (k != key) {
delete obj[k]
}
}
Aber ich frage mich, ob es ein besserer Weg. Das Erstellen einer temporären Variablen und das Iterieren über das gesamte Objekt scheinen unnötig zu sein. Mein erster Versuch war:
obj = {
key: obj[key]
}
Aber das führte zu einem Objekt mit einem Schlüssel von key
.
Try '[key]: obj [key]'. Sie benötigen hier eine berechnete Eigenschaft und keine literale Eigenschaft. – Xufox
@saniales das ist, was ich anfangs versuchte und es hat nicht funktioniert. Lesen Sie das Ende der Frage – ewok
ist der Schlüssel eine Variable? – gurvinder372