2017-10-31 2 views
0

neu es6 hier. Gibt es eine Möglichkeit, diesen Code mit es6 Funktionen zu kürzen? Ich versuche, von einem Objekt zu zerstören und diese gezogenen Eigenschaften in ein neues Objekt zu bringen.es6 Objekt Destrukturierung, zuweisen in neues Objekt

const { Height, Width, Location, MapAttachmentTypes, 
ZoomLevelAdjustment, CustomPushPins, CenterPushpinStyle, ScaleFactor } = args; 
     const body = { 
      Height, 
      Width, 
      Location, 
      MapAttachmentTypes, 
      ZoomLevelAdjustment, 
      CustomPushPins, 
      CenterPushpinStyle, 
      ScaleFactor 
     }; 

Ich versuchte dies, aber es hat nicht funktioniert:

const body = { Height, Width, Location, MapAttachmentTypes, ZoomLevelAdjustment, CustomPushPins, CenterPushpinStyle, ScaleFactor } = args; 
+1

Ich denke, * * Diese zuvor gestellt wurde, zumindest ein paar Mal; hast du [suche] (/ hilfe/suche) gründlich? * (nicht mein DV) * –

+1

Was meinst du mit "hat nicht funktioniert"? –

+0

Wie sieht dein 'args' Objekt aus? Strukturiert es wie erwartet? – jmargolisvt

Antwort

-3
// new syntax 
    const body = { 
     ...args 
    }; 
    // es5 
    const body = Object.assign({}, args); 
+0

Dies wird ** alle ** der Eigenschaften von 'args' kopieren, nicht nur die ausgewählten Eigenschaften. –

+0

Dadurch wird alles aus 'args' zurückgegeben, nicht nur die angegebenen Schlüssel. – pawel

+0

In der Tat, wenn es nicht gewünscht ist, wird das erste Beispiel in der Frage den Trick tun. –