JavaScript Objekt-Literal tief vergeben [duplizieren]

8

Ich versuche, einen Wert in einem Objekt tief zuzuordnen. Zum Beispiel:

%Vor%

Im Augenblick, ohne lodash, kann ich tun:

%Vor%

Mit lodash kann ich das tun:

%Vor%

Ich versuche, die Verwendung einer Drittanbieter-Bibliothek zu vermeiden. Gibt es eine elegantere Lösung, besonders jetzt, da es sich um eine Objektdestrukturierung von es2015 handelt? Die umgekehrte Operation ist einfach:

%Vor%

Was ist eine elegante Lösung für die Deep Object Assignment? Danke!

    
aherriot 15.06.2016, 19:02
quelle

4 Antworten

0

Hier ist eine ziemlich lesbare Möglichkeit, dem tiefen Objekt sicher zuzuordnen:

%Vor%

Das erstellt nicht errors.subCategory.subSubCategory , wenn es noch nicht existiert.

    
Bo Borgerson 15.06.2016 19:10
quelle
0

Kurze Antwort, nein es gibt keine saubere Methode, dies zu tun, ohne eine Methode dafür zu schreiben (tbh könntest du einfach die Methode von lodash verwenden, ohne die ganze Bibliothek zu importieren)

... aber ...

WARNUNG Dies ist nur zum Spaß. Versuchen Sie dies nicht in der Produktion (req es6).

%Vor%

verwenden:

%Vor%     
Damon 15.06.2016 19:53
quelle
0

Object.assign () funktioniert gut für das, was Sie fragen.

%Vor%

Dies ergibt:

%Vor%     
Cobus Kruger 15.06.2016 20:19
quelle
0

Sie könnten etwas wie unten versuchen:

%Vor%     
Thalaivar 15.06.2016 23:47
quelle

Tags und Links