Ini adalah masalah sederhana, dan saya pernah melakukannya sebelumnya. Saya hanya tidak ingat bagaimana, atau apa sebenarnya sebutan itu.
Dengan python saya bisa melakukan ini:
arr = ['one', 'two']
one, two = arr
bagaimana cara melakukannya di JavaScript?
javascript
arrays
Carson Myers
sumber
sumber
Itu tugas yang merusak . Anda dapat melakukannya di beberapa browser dengan sintaks berikut:
Ini didukung di beberapa browser dan transpiler terbaru seperti Babel dan Traceur . Ini adalah fitur yang diperkenalkan dengan ECMAScript 4 yang kemudian menjadi ECMAScript Harmony, yang akhirnya menjadi ES 2015.
sumber
Pertanyaannya agak lama tapi saya suka memposting solusi alternatif (2016) ini: Seseorang juga dapat menggunakan operator penyebaran "...".
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Spread_operator
let xAndY = [42, 1337]; let f = function(x, y) { return x + y; }; f(...xAndY);
sumber
Anda bisa menggunakan fungsi apply array jika Anda ingin item array dilewatkan sebagai argumen fungsi.
sumber
Array
memiliki.apply()
fungsi. Saya pikir yang Anda maksudsome_function.apply(this, my_array)
. Lihat jawabanPenerapan ide serius.
http://jsfiddle.net/RichAyotte/6D2wP/
(function(a, b, c, d) { console.log(a, b, c, d); }.apply(this, ['a', 'b', 'c', 'd']));
sumber
var one = arr[0]; var two = arr[1];
sumber
var
untuk mencegah variabel mencemari cakupan global.var
s untuk setiap cakupan sekaligus daripada memiliki duavar
deklarasi terpisah .CoffeeScript memilikinya: http://jashkenas.github.com/coffee-script/#pattern_matching
Dan, dikutip dari atas halaman:
"CoffeeScript adalah bahasa kecil yang dikompilasi ke dalam JavaScript. Anggap saja sebagai saudara lelaki JavaScript yang kurang mencolok - gen yang sama, kira-kira tingginya sama, tetapi gaya yang berbeda. Terlepas dari beberapa hadiah bonus, pernyataan di CoffeeScript sesuai dengan satu -to-one dengan padanannya di JavaScript, itu hanya cara lain untuk mengatakannya. "
sumber