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

จะลบองค์ประกอบของสองอาร์เรย์และเก็บผลลัพธ์เป็นอาร์เรย์บวกใน JavaScript ได้อย่างไร


สมมุติว่าเรามีอาร์เรย์สองแบบนี้ −

const arr1 = [1,2,3,4,5,6];
const arr2 = [9,8,7,5,8,3];

เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่รับอาร์เรย์สองอาร์เรย์ดังกล่าวและส่งกลับอาร์เรย์ที่มีความแตกต่างแบบสัมบูรณ์ระหว่างองค์ประกอบที่สอดคล้องกันของอาร์เรย์

ดังนั้น สำหรับอาร์เรย์เหล่านี้ ผลลัพธ์ควรมีลักษณะดังนี้ −

const output = [8,6,4,1,3,3];

เราจะใช้การวนซ้ำและผลักความแตกต่างสัมบูรณ์ซ้ำๆ เข้าไปในอาร์เรย์ใหม่และสุดท้ายจะคืนค่าอาร์เรย์

ตัวอย่าง

ต่อไปนี้เป็นรหัส -

const arr1 = [1,2,3,4,5,6];
const arr2 = [9,8,7,5,8,3];
const absDifference = (arr1, arr2) => {
   const res = [];
   for(let i = 0; i < arr1.length; i++){
      const el = Math.abs((arr1[i] || 0) - (arr2[i] || 0));
      res[i] = el;
   };
   return res;
};
console.log(absDifference(arr1, arr2));

ผลลัพธ์

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ในคอนโซล -

[ 8, 6, 4, 1, 3, 3 ]