Entpacken von Arrays in separate Variablen in JavaScript
Dies ist ein einfaches problem, und ich habe es getan, bevor. Ich kann mich nicht erinnern, wie oder was genau es war, genannt.
In python kann ich dies tun:
arr = ['one', 'two']
one, two = arr
wie mache ich das in JavaScript?
InformationsquelleAutor der Frage Carson Myers | 2010-08-06
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dies ist derzeit die einzige cross-browser-kompatible Lösung AFAIK:
ES6 ermöglichen destructuring assignment:
Oder, zu bleiben, um zu Ihrer anfänglichen Beispiel:
Könnte man auch einen default-Wert:
InformationsquelleAutor der Antwort Mathias Bynens
Dass destructuring assignment. Sie können es in einigen Browsern wird mit der folgenden syntax:
Es unterstützt einige der neuesten Browser und transpilers wie Babel und Traceur. Dieses feature wurde eingeführt, mit ECMAScript 4, der später in ECMAScript Harmony, die schließlich wurde ES 2015.
InformationsquelleAutor der Antwort Andy E
Können Sie Arrays anwenden-Funktion, wenn Sie möchten, eine array-Elemente übergeben werden, die als Funktion der Argumente.
InformationsquelleAutor der Antwort serious
Die Frage ist eher alt, aber ich poste gerne diese alternative (2016) Lösung: Man kann auch die verbreiten operator "...".
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Spread_operator
InformationsquelleAutor der Antwort Chris K.
InformationsquelleAutor der Antwort rob waminal
CoffeeScript hat es: http://jashkenas.github.com/coffee-script/#pattern_matching
Und, von oben zitiert von der Seite:
"CoffeeScript ist eine kleine Sprache, die kompiliert in JavaScript. Denke, dass es JavaScript ist weniger Auffällig kleiner Bruder — die gleichen Gene, die etwa die gleiche Höhe, aber einen unterschiedlichen Sinn für Stil. Abgesehen von einer Handvoll bonus-goodies, die Aussagen in CoffeeScript entsprechen eins-zu-eins mit Ihrem äquivalent in JavaScript, es ist nur ein weiterer Weg, es zu sagen."
InformationsquelleAutor der Antwort Jakob
Umsetzung der ernsthafte Idee.
http://jsfiddle.net/RichAyotte/6D2wP/
InformationsquelleAutor der Antwort Richard Ayotte