2017-12-06 2 views
0

Der Schlüssel Zeile im Skript in session zu verwenden ist var tmp = $(this).parent().find('select').val();bekommen val()

und tmp kehrt zum Beispiel "s1" (einschließlich der Anführungszeichen) ein, wie in der Konsole zu sehen, was ist das, was erwartet wird. tmp wird verschiedene Werte haben, abhängig davon, was auf der Seite ausgewählt ist.

Aber sessionStorage.tmp = 2 erstellt einen Schlüssel: Wert-Paar von `` tmp: 2, nicht s1:2.

Wie erstelle ich ein SessionStorage-Objekt s1 mit Wert 2?

Scheint so, als sollte dies einfach sein. Ich habe versucht tmp = tmp.toString(); und eine Million anderer Dinge, aber ich bin zu viel Neuling, um das herauszufinden. Danke für jede Hilfe.

Antwort

1

Wenn Sie eine string als Eigenschaftsnamen verwenden möchten, werden Sie ein Konstrukt wie folgt verwenden müssen:

sessionStorage[tmp] = 2 

Dies scheint Klammer-Notation genannt werden Sie HERE weitere Informationen darüber finden

+0

Vielen Dank. Ich verbrachte Stunden damit, verschiedene Dinge auszuprobieren. Wie hätte ich das gefunden oder wie heißt das? Oder was ist das Konzept? – Greg

+0

@Greg Dies ist nur die JavaScript-Syntax und das Konzept verwendet eine "Zeichenfolge" als Objekteigenschaftsname oder -objekt. Es wird wahrscheinlich in vielen einleitenden JavaScript-Kursen erwähnt. – Titus

+0

@Greg Ich habe meine Antwort bearbeitet, um weitere Details hinzuzufügen. – Titus