Ich bin neu in javascript.Ich versuche ein Array mit Schlüsselwertpaar zu bauen, und ich habe das erfolgreich gemacht.Ermitteln Sie doppelte Schlüssel und ersetzen Sie ihren Wert innerhalb eines Arrays in Javascript
Dies ist meine aktuelle Ausgabe:
Nun, was ich will, ist der Schlüssel für jedes Objekt zu überprüfen, in dem array.If der Schlüssel bereits vorhanden ist, dann wird der Wert für den entsprechenden Schlüssel wird aktualisiert Andernfalls wird ein neuer Schlüssel mit seinem Wert eingefügt.
Mein Code:
function pushToAry(name, val) {
//alert("In the array");
var flag=1;
kony.print("name-->"+name+" val-->"+val);
for (var i in ARY) {
kony.print("ARY[i].name-->"+ARY[i].name+" ARY[i].val-->"+ARY[i].val);
if (ARY[i].name == name) {
kony.print("In if");
ARY[i].val = val;
flag=0;
break; //Stop this loop, we found it!
}else{
kony.print("In else");
}
}
if(flag==1){
kony.print("flag is 1-->"+flag);
var obj = {};
obj[name] = val;
ARY.push(obj);
}
}
Mein obiger Code funktioniert nicht. ARY [i] .name und ARY [i] .val kommt undefined.
ARY ist ein globales Array definiert als ARY=[];
was falsch mache ich hier?
arbeiten. Sie haben ein Array von Objekten mit je 1 Eigenschaft. Es hört sich so an, als ob Sie das eigentlich tun möchten, aber ein Javascript-Objekt lässt Sie nativ sehr ähnlich machen: 'var foo = {}; foo [name] = val; ' – Tibrogargan
Bitte schauen Sie in diesen Post -> http://stackoverflow.com/a/1988361/4361743 – karman
Downvoter Pflege zu erklären? – kgandroid