1. ล้างอาร์เรย์
var ary = [1,2,3,4]; ary.splice (0, ary.length); // ล้างอาร์เรย์คอนโซล log (ary); // output [], ล้างอาร์เรย์นั่นคือมันถูกล้างออก
2. ลบองค์ประกอบอาร์เรย์
var ary = [1,2,3,4]; ARY.SPLICE (0,1); หรือ ary.splice ($. inarray (2, ary), 1); โดยที่ $ .inarray (2, ARY) ใช้เพื่อค้นหาตำแหน่งดัชนีขององค์ประกอบในอาร์เรย์
สามวิธีในการลบอาร์เรย์ใน JS
var arr = ['a', 'b', 'c'];
ในการลบ 'B' มีสองวิธี:
1. วิธีการลบ: ลบ arr [1]
ด้วยวิธีนี้ความยาวของอาร์เรย์ยังคงไม่เปลี่ยนแปลง ในเวลานี้ arr [1] จะไม่ได้กำหนด แต่ก็มีข้อได้เปรียบที่ดัชนีของอาร์เรย์ยังคงไม่เปลี่ยนแปลง ในเวลานี้คุณต้องสำรวจองค์ประกอบอาร์เรย์ที่จะใช้
สำหรับ (ดัชนีใน arr) {document.write ('arr ['+index+'] ='+arr [ดัชนี]);}วิธีการสำรวจนี้ข้ามองค์ประกอบที่ไม่ได้กำหนดไว้ในนั้น
* วิธีนี้จะได้รับการสนับสนุนในอนาคต
2. อาร์เรย์อาร์เรย์วิธีการประกบกัน: arr.splice (1,1);
ด้วยวิธีนี้ความยาวของอาร์เรย์จะเปลี่ยนไปตามนั้น แต่ดัชนีอาร์เรย์ดั้งเดิมก็เปลี่ยนไปตามลำดับ
1 แรกในพารามิเตอร์ Splice คือดัชนีเริ่มต้นของการลบ (คำนวณจาก 0) ซึ่งเป็นองค์ประกอบที่สองของอาร์เรย์
1 ที่สองคือจำนวนองค์ประกอบที่ถูกลบและมีเพียงองค์ประกอบเดียวเท่านั้นที่ถูกลบที่นี่นั่นคือ 'B';
ในเวลานี้มีความเป็นไปได้ที่จะสำรวจองค์ประกอบอาร์เรย์ในลักษณะปกติเช่นเพราะองค์ประกอบที่ถูกลบเป็น
ไม่ได้รับการเก็บรักษาไว้ในอาร์เรย์
* วิธีนี้จะได้รับการสนับสนุนหลังจาก IE5.5 เท่านั้น
เป็นมูลค่าการกล่าวขวัญว่าในขณะที่การลบองค์ประกอบอาร์เรย์วิธีการประกบยังสามารถเพิ่มองค์ประกอบอาร์เรย์ได้
ตัวอย่างเช่น arr.splice (1,1, 'd', 'e'), d และ e ถูกเพิ่มลงใน arrray arr
อาร์เรย์ผลลัพธ์จะกลายเป็น arr: 'a', 'd', 'e', 'c'
นอกจากนี้ JavaScript ตัดทอนอาร์เรย์โดยการตั้งค่าคุณสมบัติความยาวของอาร์เรย์ซึ่งเป็นวิธีเดียวที่จะลดความยาวของอาร์เรย์ให้สั้นลง
หากคุณใช้ตัวดำเนินการลบเพื่อลบองค์ประกอบในอาร์เรย์แม้ว่าองค์ประกอบนั้นจะไม่ได้กำหนด แต่แอตทริบิวต์ความยาวของอาร์เรย์จะไม่เปลี่ยนสองวิธีในการลบองค์ประกอบและความยาวของอาร์เรย์ก็เปลี่ยนไปเช่นกัน
/ * * วิธีการ: array.remove (dx) * ฟังก์ชั่น: ลบองค์ประกอบอาร์เรย์ * พารามิเตอร์: DX ลบตัวห้อยขององค์ประกอบ * return: แก้ไขอาร์เรย์บนอาร์เรย์ดั้งเดิม* /// มักใช้คือการสร้างอาร์เรย์ใหม่ผ่าน traversal.array.prototype.remove = function (dx) {ถ้า (isnan (dx) || dx> this.length) {return false;} i = 0, n = 0; i <this.length; i ++) {ถ้า (this [i]! = this [dx]) {this [n ++] = this [i]}} this.length- = 1} a = ['1', '2', '3', '4', '5']; การแจ้งเตือน ("องค์ประกอบ:"+a+"nlength:"+a.length); A.remove (0); // ลบองค์ประกอบด้วยตัวห้อย 0 การแจ้งเตือน ("องค์ประกอบ:"+a+"nlength:"+a.length);ตัวอย่างที่ 2,
/ * * วิธี: array.baoremove (dx) * ฟังก์ชั่น: ลบองค์ประกอบอาร์เรย์ * พารามิเตอร์: DX ลบตัวห้อยขององค์ประกอบ * return: แก้ไขอาร์เรย์บนอาร์เรย์ดั้งเดิม */ // คุณสามารถใช้ Splice เพื่อนำไปใช้งานได้ array.prototype.baoremove = function (dx) {// www.vevb.comif (isnan (dx) || dx> this.length) {return false;} this.splice (dx, 1); } b = ['1', '2', '3', '4', '5']; การแจ้งเตือน ("องค์ประกอบ:"+b+"nlength:"+b.length); B.Baoremove (1); // ลบองค์ประกอบด้วยการแจ้งเตือน 1 ("องค์ประกอบ:"+b+"nlength:"+b.length);ใน IE5 หรือต่ำกว่าวัตถุอาร์เรย์ของ JavaScript ไม่ได้ให้วิธีนอกชั้นวางในการลบองค์ประกอบอาร์เรย์ ในเวอร์ชัน IE5.5+ แม้ว่าจะมีวิธีการประกบกัน แต่ก็ไม่ได้ลบรายการบางรายการ (หรือหลายรายการ) แต่จะล้างค่าของรายการบางรายการ (หรือหลายรายการ) ซึ่งหมายความว่ารายการยังคงมีอยู่และความยาวของอาร์เรย์ไม่เปลี่ยนแปลง
ในความเป็นจริงคุณสามารถเพิ่มวิธีการลบลงในอาร์เรย์ด้วยตัวเอง (โปรดทราบว่าสิ่งนี้หมายถึงการลบรายการของอาร์เรย์จากสมาชิกอาร์เรย์) บางทีคุณอาจคิดว่าจะใช้ลูปเพื่อกำหนดค่าใหม่ให้กับอาร์เรย์ แน่นอนว่ามันโอเค แต่มันไม่มีประสิทธิภาพมาก
ต่อไปนี้แนะนำวิธีการปรับแต่งการลบอาร์เรย์โดยใช้สองวิธีของชิ้นวัตถุอาร์เรย์และ concat
array.prototype.del = function (n) {// n หมายถึงคำที่เริ่มต้นจาก 0. // ต้นแบบเป็นต้นแบบวัตถุให้ความสนใจกับวิธีการเพิ่มวิธีการที่กำหนดเองลงในวัตถุที่นี่ ถ้า (n <0) // ถ้า n <0 ไม่มีอะไรทำ คืนสิ่งนี้; elsereturn this.slice (0, n) .concat (this.slice (n+1, this.length));/* วิธีการ concat: ส่งคืนอาร์เรย์ใหม่ซึ่งประกอบด้วยสองอาร์เรย์ขึ้นไป นี่คืออาร์เรย์ใหม่ที่ประกอบด้วยสิ่งนี้ slice (0, n)/this.slice (n+1, this.length) ตรงกลางรายการ nth หายไป วิธีการชิ้น: ส่งคืนเซ็กเมนต์ของอาร์เรย์ที่มีพารามิเตอร์สองตัวระบุตำแหน่งเริ่มต้นและสิ้นสุดตามลำดับ */} // วิธีการเพิ่มด้วยตัวคุณเอง test test = อาร์เรย์ใหม่ (0,1,2,3,4,5); test = test.del (3); // จาก 0, ลบรายการที่ 4 การแจ้งเตือน (ทดสอบ);รหัสข้างต้นใช้เพียงสองวิธีของวัตถุอาร์เรย์ซึ่งตระหนักถึงความต้องการพื้นฐานซึ่งเป็นสิ่งที่ดี
วิธีง่าย ๆ ข้างต้นในการลบองค์ประกอบอาร์เรย์และอาร์เรย์การล้าง (ต้องอ่าน) ใน JS คือเนื้อหาทั้งหมดที่ฉันแบ่งปันกับคุณ ฉันหวังว่าคุณจะให้ข้อมูลอ้างอิงและฉันหวังว่าคุณจะสนับสนุน wulin.com มากขึ้น