Rumah > Artikel > hujung hadapan web > Kaedah biasa untuk kemahiran JavaScript arrays_javascript
Tentukan sama ada objek ialah tatasusunan: instanceof, Array.isArray()
Untuk halaman web atau skop global, anda boleh menggunakan pengendali instanceof.
if(value instanceof Array){ //Tentukan sama ada nilai ialah tatasusunan
}
Pengendali instanceof menganggap bahawa terdapat hanya satu persekitaran pelaksanaan global Jika halaman web mengandungi berbilang bingkai, kaedah Array.isArray() ECMAScript5 yang baharu digunakan.
if(Array.isArray(value)){//Tentukan sama ada nilai ialah array
}
Penyemak imbas yang disokong oleh kaedah Array.isArray() termasuk IE9, Firefor 4, Safari5, Opera 10.5 dan Chrome.
Jika anda ingin menyemak tatasusunan dalam penyemak imbas yang tidak melaksanakan kaedah ini, gunakan:
if(Object.prototype.toString.call(value)=="[object Array]"){
}
Tukar tatasusunan kepada rentetan: toLocaleString(), toString(), valueOf(), join()
Kaedah untuk menambah dan mengalih keluar elemen tatasusunan: push(), pop(), unshift(), shift()
Kaedah push() boleh menerima sebarang bilangan parameter, menambahnya pada penghujung tatasusunan satu demi satu dan mengembalikan panjang tatasusunan yang diubah suai.
Kaedah pop() mengalih keluar item terakhir dari penghujung tatasusunan dan mengembalikan item yang dialih keluar.
Kaedah unshift() menambah sebarang bilangan parameter ke hadapan tatasusunan dan mengembalikan panjang tatasusunan baharu.
Kaedah shift() mengalih keluar item pertama dalam tatasusunan dan mengembalikan item yang dialih keluar.
Kaedah isih: reverse() dan sort()
Kaedah reverse() akan membalikkan susunan istilah tatasusunan dan beroperasi pada tatasusunan itu sendiri.
Kaedah sort() mengisih item tatasusunan dalam tertib menaik secara lalai dan beroperasi pada tatasusunan itu sendiri.
Kaedah sort() juga boleh lulus dalam fungsi perbandingan.
Fungsi perbandingan mengembalikan nombor negatif jika parameter pertama harus sebelum yang kedua, 0 jika dua parameter adalah sama, dan nombor positif jika parameter pertama harus selepas yang kedua.
Kaedah operasi: concat(), slice(), splice()
Kaedah concat() digunakan untuk menggabungkan dua atau lebih tatasusunan. Kaedah ini tidak mengubah suai tatasusunan sedia ada, tetapi hanya mengembalikan salinan tatasusunan bercantum. Kembalikan tatasusunan baharu.
Kaedah slice() mengembalikan elemen terpilih daripada tatasusunan sedia ada. Mengembalikan tatasusunan baharu yang mengandungi elemen dalam arrayObject dari awal hingga akhir (eksklusif).
Kaedah splice() menambah/mengalih keluar item ke/dari tatasusunan dan mengembalikan item yang dialih keluar. Beroperasi pada tatasusunan itu sendiri.
Parameter pertama: kedudukan permulaan, parameter kedua: bilangan pemintasan, parameter ketiga: elemen baharu yang akan ditambahkan.
Kaedah kedudukan: indexOf(), lastIndexOf()
ECMAScript5 menyediakan kaedah untuk menyokong penyemak imbas: IE9, Firefox 2, Safari 3, Opera 9.5, Chrome
Kaedah indexOf() mengembalikan kedudukan kejadian pertama nilai rentetan yang ditentukan dalam rentetan.
KaedahlastIndexOf() boleh mengembalikan kedudukan kejadian terakhir bagi nilai rentetan yang ditentukan, mencari dari belakang ke hadapan pada kedudukan yang ditentukan dalam rentetan.
Apabila terdapat satu parameter: ia mewakili nilai yang akan ditemui, dan kedudukan indeks dikembalikan (bermula dari 0 apabila terdapat dua parameter: parameter pertama mewakili kedudukan permulaan, dan parameter kedua mewakili nilai). untuk ditemui.
makluman(nombor.IndexOf(4,4));//5
alert(numbers.lastIndexOf(4,4));//3
Kaedah lelaran: every(), filter(), forEach(), map(), some()
ECMAScript5 menyediakan kaedah untuk menyokong penyemak imbas: IE9, Firefox 2, Safari 3, Opera 9.5, Chrome
every(): Jalankan fungsi yang diberikan pada setiap item dalam tatasusunan, dan kembalikan benar jika fungsi mengembalikan benar untuk setiap item.
filter(): Menjalankan fungsi yang diberikan pada setiap item dalam tatasusunan dan mengembalikan tatasusunan item yang fungsi akan kembalikan benar.
forEach(): Menjalankan fungsi yang diberikan pada setiap item dalam tatasusunan Kaedah ini tidak mempunyai nilai pulangan.
map(): Menjalankan fungsi yang diberikan pada setiap item dalam tatasusunan dan mengembalikan tatasusunan yang terdiri daripada hasil setiap panggilan fungsi.
some(): Menjalankan fungsi yang diberikan pada setiap item dalam tatasusunan dan mengembalikan benar jika fungsi mengembalikan benar untuk mana-mana item.
Tiada satu pun fungsi di atas akan mengubah suai nilai yang terkandung dalam tatasusunan.
alert(mapResult);//[2,4,6,8,10,8,6,4,2]
//forEach()
numbers.forEach(function(item,index,array){
//Lakukan operasi tanpa nilai pulangan
Kaedah gabungan: reduce(), reduceRight()
ECMAScript5 menyediakan kaedah untuk menyokong pelayar: IE9, Firefox 3, Safari 4, Opera 10.5, Chrome Kedua-dua kaedah berulang ke atas semua item tatasusunan dan kemudian membina nilai akhir yang dikembalikan. Kaedah reduce() bermula dari item pertama dalam tatasusunan, dan kaedah reduceRight() bermula dari penghujung tatasusunan.
Salin kod