2016-06-02 9 views
1

Ich hatte eine AufgabePassend zu den Objektschlüssel und fügen Sie einen neuen Schlüssel und Wert sie mit lodash

{ 
    sampletrue:{ 
    data1:'data', 
    data2:'data' 
    }, 
    samplefalse:{ 
    data1:'data', 
    data2:'data' 
} 
} 

hier, was ich versuche, mit dem Objektschlüssel Namen zu tun ist, ich möchte hinzufügen ein neues Schlüssel/Wert-Paar hinein. Nehmen wir an, für 'sampletrue' Objekt möchte ich den Schlüsselnamen anpassen und wenn es 'wahr' hat, muss ich einen neuen Wert hinzufügen als "resolve: 'enable'" und wenn es 'false' ist, möchte ich hinzufügen "resolve: 'disable' "Ich benutze lodash in meinem Code.

Beispielausgabe:

{ 
sampletrue:{ 
data1:'data', 
data2:'data', 
resolve:'enable' 
}, 
samplefalse:{ 
data1:'data', 
data2:'data' 
resolve:'disable' 
} 
} 

Dank!

Antwort

0

können Sie Erklärung in den Kommentaren finden:

var d = { 
 
    sampletrue: { 
 
    data1: 'data', 
 
    data2: 'data' 
 
    }, 
 
    samplefalse: { 
 
    data1: 'data', 
 
    data2: 'data' 
 
    } 
 
} 
 
// loop through the keys of the object with Object.keys() and forEach() 
 
Object.keys(d).forEach(k => { 
 
// we check with match method if the key (k) matches 'true' 
 
    if (k.match(/true$/)) 
 
    d[k].resolve='enable' ;//if it matches assign resolve prop , 'enable' val 
 
    
 
//same as above but with 'false' 
 
    if (k.match(/false$/)) 
 
    d[k].resolve='disable' ; 
 
}) 
 

 
console.log(d)

+0

Vielen Dank für Ihre Antwort. Warum brauchen wir k> = nur versuchen zu verstehen – rUI

+0

forEach() ist eine Array-Methode, die es erlaubt, durch jeden Array-Eintrag eine Funktion zu loopen. Das erste Argument in der Callback-Funktion ist der Eintrag (in diesem Fall der Schlüssel). ForEach ist eine grundlegende in js so nehmen Sie sich Zeit und lernen Sie es durchgängig – maioman

+0

Ich versuchte mit lodash und es funktioniert super. Danke für deine Antwort – rUI

Verwandte Themen