Rumah > Artikel > hujung hadapan web > Apakah maksud tatasusunan Javascript?
Dalam Javascript, tatasusunan merujuk kepada koleksi data tersusun Setiap ahli tatasusunan dipanggil elemen, dan nama (kunci) setiap elemen dipanggil subskrip tatasusunan (Indeks); fleksibel dan boleh dibaca dan boleh ditulis.
Persekitaran pengendalian tutorial ini: sistem Windows 7, versi JavaScript 1.8.5, komputer Dell G3.
Tatasusunan JavaScript (Array) ialah koleksi data tersusun Setiap ahli dalam tatasusunan dipanggil elemen (Elemen), dan nama (kunci) setiap elemen dipanggil indeks tatasusunan (Indeks). Panjang tatasusunan adalah fleksibel dan boleh dibaca dan boleh ditulis.
Objek tatasusunan tatasusunan ialah objek terbina dalam JS, yang boleh menggunakan pembolehubah untuk menyimpan satu siri nilai jenis yang sama atau berbeza, di mana setiap nilai yang disimpan dipanggil elemen tatasusunan.
Penciptaan tatasusunan JS
Objek tatasusunan mesti dibuat sebelum menggunakan objek Tatasusunan untuk menyimpan data. Terdapat banyak cara untuk mencipta objek Array, dua cara biasa disenaraikan di bawah.
Kaedah 1: nama objek tatasusunan var = [elemen 1, elemen 2,..., elemen n];
Kaedah 2: var array Nama objek = new Array(elemen 1, elemen 2,..., elemen n);
Kaedah satu ialah kaedah penciptaan tatasusunan yang lebih mudah, manakala kaedah dua ialah Formal yang lebih ringkas kaedah penciptaan tatasusunan. Kedua-dua kaedah penciptaan mengembalikan objek tatasusunan yang baru dicipta dan dimulakan Kedua-duanya memulakan tatasusunan dengan nilai yang ditentukan oleh parameter Bilangan elemen (juga dipanggil panjang tatasusunan) ialah bilangan parameter. Kesan kedua-dua kaedah ini secara amnya adalah sama, tetapi kerana kaedah satu lebih ringkas, ia adalah yang paling biasa digunakan dalam aplikasi praktikal.
Contoh penciptaan tatasusunan:
var hobbies1 = ["旅游","运动","音乐"]; var hobbies2 = new Array("旅游","运动","音乐");
Kod contoh di atas mencipta dua objek tatasusunan yang mengandungi 3 elemen Ia adalah setara sepenuhnya, tetapi baris pertama kod adalah lebih ringkas.
Perlu diambil perhatian bahawa kedua-dua kaedah di atas untuk mencipta tatasusunan secara amnya adalah sama sepenuhnya, kecuali untuk kes di mana terdapat hanya satu parameter jenis angka. Kerana pada masa ini, apabila menggunakan kaedah penciptaan pertama, ini bermakna tatasusunan yang mengandungi hanya satu elemen dicipta, dan nilai elemen adalah sama dengan parameter angka apabila menggunakan kaedah penciptaan kedua, ini bermakna tatasusunan dengan panjang yang sama dengan parameter jenis angka dicipta, contohnya:
var arr = [3]; //创建了一个只有一个元素的数组,元素值为3 var arr = new Array(3);//创建了一个有3个元素的数组,3个元素值均为undefined
Rujukan elemen tatasusunan JS
Setiap elemen yang disimpan dalam tatasusunan mempunyai indeks kedudukan (juga dipanggil subskrip), tatasusunan Subskrip bermula dari 0 dan berakhir dengan panjang tatasusunan-1, iaitu, subskrip elemen pertama ialah 0, dan subskrip elemen terakhir ialah panjang tatasusunan-1 .
Apabila merujuk elemen tatasusunan, anda boleh menggunakan nama tatasusunan dan subskrip Format rujukan adalah seperti berikut:
数组名[元素下标]
Contohnya: 3 elemen tatasusunan bernama arr mengandungi 3 elemen, Boleh dirujuk oleh: arr[0], arr[1] dan arr[2] masing-masing.
JS Array Access
Terdapat dua cara untuk mengakses tatasusunan:
Salah satunya ialah mengakses nama tatasusunan secara terus . Pada masa ini Akan mengembalikan semua nilai elemen yang disimpan dalam tatasusunan. Sebagai contoh, makluman(hobi1), selepas melaksanakan pernyataan ini, semua nilai elemen yang disimpan dalam tatasusunan hobi1 yang dibuat di atas akan dikeluarkan dalam kotak dialog amaran: perjalanan, sukan, muzik
Yang kedua ialah Gunakan tatasusunan tambah akses subskrip, yang mana nilai elemen tatasusunan sepadan dengan subskrip tatasusunan akan dikembalikan. Sebagai contoh: alert(hobbies1[1]), selepas pernyataan ini dilaksanakan, "Motion" akan dikeluarkan dalam kotak dialog amaran.
JS merentasi tatasusunan (untuk dalam dan untuk setiap gelung)
JS Terdapat banyak cara untuk melintasi tatasusunan (tatasusunan gelung), anda boleh gunakan gelung For tradisional, anda juga boleh menggunakan yang dinaik taraf untuk dalam gelung, atau anda boleh menggunakan kaedah forEach() jenis Array jika anda ingin melintasi nama kunci objek, anda juga boleh menggunakan kaedah keys(). .
1. Gunakan untuk dan untuk dalam untuk melintasi tatasusunan
Kedua-dua pernyataan untuk dan untuk/dalam boleh mengulang tatasusunan. Pernyataan for perlu dilaksanakan dengan atribut panjang dan subskrip tatasusunan, dan kecekapan pelaksanaan tidak setinggi pernyataan for/in. Selain itu, untuk/dalam penyataan langkau elemen kosong.
Untuk tatasusunan yang sangat panjang, adalah disyorkan untuk menggunakan penyataan untuk/dalam untuk lelaran.
Contoh 1
Contoh berikut menggunakan pernyataan for untuk lelaran pada tatasusunan dan menapis semua elemen angka.
var a = [1, 2, ,,,,,,true,,,,,,, "a",,,,,,,,,,,,,,,4,,,,,56,,,,,,"b"]; //定义数组 var b = [], num = 0; for (var i = 0; i < a.length; i ++) { //遍历数组 if (typeof a[i] == "number") //如果为数字,则返回该元素的值 b.push(a[i]); num ++; //计数器 } console.log(num); //返回42,说明循环了42次 console.log(b); //返回[1,2,4,56]
Contoh 2
Kod berikut menggunakan penyataan untuk/dalam untuk mengulangi tatasusunan a dalam Contoh 1. Dalam struktur gelung untuk/dalam, pembolehubah i mewakili subskrip tatasusunan, dan a[i] ialah nilai elemen dari mana subskrip yang ditentukan boleh dibaca.
var b = [], num = 0; for (var i in a) { //遍历数组 if(typeof a[i] == "number") //如果为数字,则返回该元素的值 b.push(a[i]); num ++; //计数器 } console.log(num); //返回7,说明循环了7次 console.log(b); //返回[1,2,4,56]
Seperti yang anda boleh lihat daripada pemasa, pernyataan for/in berulang melalui tatasusunan dan hanya gelung 7 kali, manakala pernyataan for gelung 42 kali.
2. Gunakan forEach untuk melintasi tatasusunan
Jenis Tatasusunan mentakrifkan kaedah prototaip forEach() untuk setiap tatasusunan, yang boleh digunakan untuk melaksanakan operasi lelaran untuk tatasusunan. Penerangan khusus adalah seperti berikut:
array.forEach(callbackfn[, thisArg]);
Penerangan parameter adalah seperti berikut:
tatasusunan: objek tatasusunan.
panggilan balikfn: parameter yang diperlukan, fungsi yang boleh menerima sehingga tiga parameter. forEach akan memanggil fungsi callbackfn sekali untuk setiap elemen dalam tatasusunan.
thisArg: parameter pilihan, objek yang boleh dirujuk oleh ini dalam fungsi callbackfn. Jika thisArg diketepikan, nilai ini tidak ditentukan.
对于数组中出现的每个元素,forEach 方法都会调用 callbackfn 函数一次,采用升序索引顺序,但不会为数组中空元素调用回调函数。
除了数组对象之外,forEach 方法还可以用于有 length 属性且具有已按数字编制索引的属性名的任何对象,如关联数组对象、Arguments 等。
回调函数语法如下:
funtion callbackfn(value, index, array);
最多可以使用三个参数来声明回调函数。回调函数的参数说明如下。
value:数组元素的值。
index:数组元素的数字索引。
array:包含该元素的数组对象。
forEach 方法不直接修改原始数组,但回调函数可能会修改它。
示例
下面示例使用 forEach 迭代数组 a,然后把每个元素的值和下标索引输出显示,代码如下:
function f(value,index,array) { console.log("a[" + index + "] = " + value); } var a = ['a', 'b', 'c']; a.forEach(f);
演示结果如下:
【推荐学习:javascript高级教程】
Atas ialah kandungan terperinci Apakah maksud tatasusunan Javascript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!