Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Javascript

การเพิ่มองค์ประกอบในอาร์เรย์โดยใช้ Javascript


การเพิ่มองค์ประกอบลงในอาร์เรย์สามารถทำได้โดยใช้ฟังก์ชันต่างๆ สำหรับตำแหน่งต่างๆ

การเพิ่มองค์ประกอบที่ส่วนท้ายของอาร์เรย์

สามารถทำได้โดยใช้วิธีการกด ตัวอย่างเช่น

let veggies = ["Onion", "Raddish"];
veggies.push("Cabbage");
console.log(veggies);

สิ่งนี้จะให้ผลลัพธ์ -

["Onion", "Raddish", "Cabbage"]

คุณยังสามารถใช้สิ่งนี้เพื่อดันหลายรายการพร้อมกันได้เนื่องจากรองรับหมายเลขตัวแปรของ

อาร์กิวเมนต์ ตัวอย่างเช่น

let veggies = ["Onion", "Raddish"];
veggies.push("Cabbage", "Carrot", "Broccoli");
console.log(veggies);

สิ่งนี้จะให้ผลลัพธ์ -

["Onion", "Raddish", "Cabbage", "Carrot", "Broccoli"]

การเพิ่มองค์ประกอบที่จุดเริ่มต้นของอาร์เรย์

สามารถทำได้โดยใช้วิธีการ unshift ตัวอย่างเช่น

let veggies = ["Onion", "Raddish"];
veggies.unshift("Cabbage");
console.log(veggies);

สิ่งนี้จะให้ผลลัพธ์ -

["Cabbage", "Onion", "Raddish"]

คุณยังสามารถใช้ตัวเลือกนี้เพื่อยกเลิกการเปลี่ยนหลายรายการพร้อมกันได้เนื่องจากรองรับหมายเลขตัวแปรของ

อาร์กิวเมนต์ ตัวอย่างเช่น

let veggies = ["Onion", "Raddish"];
veggies.unshift("Cabbage", "Carrot", "Broccoli");
console.log(veggies);

สิ่งนี้จะให้ผลลัพธ์ -

["Cabbage", "Carrot", "Broccoli", "Onion", "Raddish"]

การเพิ่มองค์ประกอบในตำแหน่งที่กำหนดของอาร์เรย์

บางครั้งคุณจำเป็นต้องเพิ่มองค์ประกอบในตำแหน่งที่กำหนดในอาร์เรย์ JavaScript ไม่รองรับตั้งแต่แกะกล่อง เราจึงต้องสร้างฟังก์ชันขึ้นมาจึงจะสามารถทำได้ เราสามารถเพิ่มไปยังต้นแบบ Array เพื่อให้สามารถใช้งานได้โดยตรงบนวัตถุ

Array.prototype.insert = function(data, position) {
   if (position >= this.length) {
      this.push(data)
      // Put at the end if position is more than total length of array
   } else if (position <= 0) {
      this.unshift(data)
      // Put at the start if position is less than or equal to 0
   } else {
      // Shift all elements to right
      for (let i = this.length; i >= position; i--) {
         this[i] = this[i - 1];
      }
      this[position] = data;
   }
}

let arr = [1, 2, 3, 4];
arr.insert(-1, 2);
console.log(arr);

สิ่งนี้จะให้ผลลัพธ์ -

[1, 2, -1, 3, 4]

ตอนนี้วิธีการแทรกมีอยู่ในทุกอ็อบเจ็กต์อาร์เรย์ที่คุณสร้าง

คุณยังสามารถใช้วิธีประกบเพื่อแทรกองค์ประกอบที่ตำแหน่งที่กำหนด ตัวอย่างเช่น

var months = ['Jan', 'March', 'April', 'June'];
months.splice(1, 0, 'Feb');
console.log(months);

สิ่งนี้จะให้ผลลัพธ์:

['Jan', 'Feb', 'March', 'April', 'June']

อาร์กิวเมนต์แรกของเมธอดคือดัชนีที่เราต้องการลบองค์ประกอบออกจากหรือแทรกองค์ประกอบเข้าไป อาร์กิวเมนต์ที่สองคือจำนวนองค์ประกอบที่เราต้องการลบ และอาร์กิวเมนต์ที่สามเป็นต้นไปคือค่าที่เราต้องการแทรกลงในอาร์เรย์