Kaedah pemadaman: 1. Gunakan kata kunci padam; 2. Gunakan kaedah operasi splice() 3. Kaedah lelaran, gunakan gelung untuk mengulang elemen tatasusunan dan padamkan item yang sepadan dengan item yang akan menjadi dipadam; 4. Prototaip kaedah prototaip , tambah kaedah pada prototaip Array untuk mencapai tujuan pemadaman.
Persekitaran pengendalian tutorial ini: sistem Windows 7, versi JavaScript 1.8.5, komputer Dell G3.
Dalam JavaScript, selain Object, jenis Array (array) mungkin jenis yang paling biasa digunakan. Tatasusunan dalam JavaScript sangat fleksibel berbanding tatasusunan dalam bahasa lain. Fleksibiliti jenis ini mempunyai kelebihan dan kekurangan Kelebihannya ialah ia kreatif dan boleh memberikan pelbagai penyelesaian yang fleksibel; tidak terkawal dan gila.
Setelah mengejek beberapa perkataan sebelum ini, mari kita kembali kepada topik Di sini kita akan meringkaskan 7 kaedah memadam elemen Array dalam JavaScript, yang menggunakan atribut panjang, padam kata kunci, kaedah tindanan pop() dan. kaedah giliran shift() , kaedah operasi splice(), kaedah lelaran forEach() atau penapis() dan kaedah prototaip.
padam kata kunci
JavaScript menyediakan kata kunci padam untuk memadam (mengosongkan) elemen tatasusunan.
var colors = ["red", "blue", "grey", "green"];delete colors[0]; console.log(colors); // [undefined, "blue", "grey", "green"]
Perlu diingat bahawa selepas menggunakan padam untuk memadam elemen, panjang tatasusunan tidak berubah, tetapi elemen yang dipadam ditetapkan kepada tidak ditentukan.
kaedah operasi splice()
Objek Array dalam JavaScript menyediakan kaedah splice() untuk melaksanakan operasi khusus pada tatasusunan. splice() mungkin kaedah tatasusunan yang paling berkuasa Ia boleh digunakan dalam pelbagai cara Di sini kami hanya memperkenalkan kaedah memadamkan elemen tatasusunan. Apabila memadamkan elemen tatasusunan, ia boleh memadamkan sebarang bilangan item dengan menyatakan hanya 2 parameter: kedudukan item pertama yang akan dipadamkan dan bilangan item yang akan dipadamkan.
var colors = ["red", "blue", "grey"];var color = colors.splice(0, 1); console.log(color); // "red"console.log(colors); // ["blue", "grey"]
Ia boleh dilihat bahawa apabila kaedah splice(0, 1) dipanggil, satu item dipadamkan daripada tatasusunan bermula dari item pertama.
Kaedah lelaran
Kaedah lelaran yang dipanggil ialah menggunakan gelung untuk mengulang elemen tatasusunan dan memadamkan item yang sepadan dengan item yang akan dipadamkan. Tempat yang paling biasa digunakan mungkin apabila elemen dalam tatasusunan adalah objek, dan elemen tatasusunan boleh dipadamkan berdasarkan atribut tertentu objek (seperti ID).
Kaedah pertama menggunakan gelung ForEach yang paling biasa untuk membandingkan elemen dan memadamkannya selepas menemuinya.
var colors = ["red", "blue", "grey"]; colors.forEach(function(item, index, arr) { if(item === "red") { arr.splice(index, 1); } });
Anda boleh melihat bahawa kaedah splice() juga diperlukan untuk mencapai pemadaman Gelung hanya untuk mencari elemen tertentu. Idea lain ialah menolak elemen yang tidak perlu dipadamkan ke dalam tatasusunan baharu dalam gelung, yang juga boleh mencapai tujuan memadamkan elemen tertentu secara palsu.
Untuk kaedah kedua, kami menggunakan kaedah penapis dalam gelung.
var colors = ["red", "blue", "grey"]; colors = colors.filter(function(item) { return item != "red"}); console.log(colors); // ["blue", "grey"]
Kod ini sangat mudah ia mengetahui bilangan item yang elemennya tidak berwarna merah dan mengembalikannya kepada warna (sebenarnya, ia mendapat tatasusunan baharu, tidak memadam tatasusunan asal pada tahap tertentu, ia boleh dipertimbangkan Untuk tujuan memadam elemen tertentu.
kaedah prototaip prototaip
boleh dipadamkan dengan menambahkan kaedah pada prototaip Array.
Array.prototype.remove = function(dx) { if(isNaN(dx) || dx > this.length){ return false; } for(var i = 0, n = 0; i < this.length; i++) { if(this[i] != this[dx]) { this[n++] = this[i]; } } this.length -= 1; };var colors = ["red", "blue", "grey"]; colors.remove(1); console.log(colors); // ["red", "grey"]
Kaedah ini sebenarnya untuk melaksanakan logik pemadaman sendiri, dan kemudian menambah kaedah pemadaman pada objek prototaip Array, kemudian semua objek Array dalam persekitaran ini boleh menggunakan kaedah ini. Walaupun boleh dilakukan, ia tidak disyorkan untuk mengubah suai prototaip objek asli dalam aplikasi pengeluaran. Sebabnya mudah. Jika kaedah tiada dalam pelaksanaan tertentu, maka menambahkan kaedah ini pada prototaip objek asli boleh menyebabkan konflik penamaan apabila kod dijalankan dalam pelaksanaan lain yang menyokong kaedah ini. Dan berbuat demikian secara tidak sengaja boleh menyebabkan kaedah asli dibatalkan.
[Pembelajaran yang disyorkan: Tutorial JavaScript Lanjutan]
Atas ialah kandungan terperinci Bagaimana untuk memadam elemen tatasusunan yang ditentukan dalam javascript. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!