Mapping-mehrere Schlüssel auf denselben Wert in eine Javascript-hash
Ich benutze einen Javascript hash-Objekt zum speichern einer Reihe von numerischen Zähler, wie folgt eingerichtet [dies ist, stark vereinfacht]:
var myHash = {
A: 0,
B: 0,
C: 0
};
Ist es ein Weg, um andere Tasten, die nicht explizit in myHash
, anzeigen zu Tasten? Zum Beispiel, ich möchte [nochmals, das ist vereinfacht]:
myHash['A_prime']++; //or myHash.A_prime++;
genau entspricht
myHash['A']++; //or myHash.A++;
z.B. Inkrementieren den Wert zu finden auf der Taste A
, nicht A_prime
.
InformationsquelleAutor Matt Ball | 2010-03-24
Du musst angemeldet sein, um einen Kommentar abzugeben.
Vorausgesetzt, es gibt keine gültige string-Werte in diesem hash könnte man erstellen Sie Ihre eigene Zuordnung der Tasten auf andere Tasten innerhalb der hash an sich, und wickeln Sie das Schlüssel/Wert-Paare in eine eigene Funktion, wie folgt:
Ich mag die Idee, wie Es sein würde, ein set von vars innerhalb einer hash.., Dass könnte leicht ein-Klasse
InformationsquelleAutor Zach
Einen Weg, dies zu lösen wäre, wickeln alle Werte in einem Objekt und die dieses Objekt verwenden, in der mehrere Schlüssel.
InformationsquelleAutor Pindatjuh
Ich glaube, Sie wäre besser dran, nur das schreiben einer Funktion zum ausführen der Schrittweite von einem hash-array oder mehrere-je nachdem, was Sie versuchen zu erreichen. Vielleicht habe ich die Frage nicht verstanden, richtig, aber dies ist meine Lösung.
InformationsquelleAutor branchgabriel
Könnten Sie handeln auf die Taste, anstatt den hash:
Die Funktion
incr
konnte nichts anderes sein, die Sie anwenden möchten, um den hash.InformationsquelleAutor Mic
Sind, wie beschrieben, nicht. Wenn Sie ändern, können Sie Ihre Schlüssel, um Objekte, obwohl Sie würd näher:
myHash
Objekt wird am Ende mit einer Eigenschaft namens"[object Object]"
weil die[]
property accessor operator konvertiertx
undy
String.Ich habe die Kontrolle über den hash, aber nicht die Tasten. Meine Frage ist ob ich kann tun was ich will, angesichts der Einschränkungen auf meinem Schlüssel.
Jeden Tag etwas neues lernen.
InformationsquelleAutor roufamatic