Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> JavaScript

ผลรวมขององค์ประกอบที่ไม่ซ้ำกันทั้งหมดในอาร์เรย์ JavaScript

สมมติว่าเรามีอาร์เรย์ของตัวเลขดังนี้:

const arr = [14, 54, 23, 14, 24, 33, 44, 54, 77, 87, 77, 14];

เราต้องเขียนฟังก์ชัน JavaScript ที่รับอาร์เรย์แบบนี้และนับผลรวมขององค์ประกอบทั้งหมดที่ปรากฏเพียงครั้งเดียวในอาร์เรย์

ตัวอย่าง:

ผลลัพธ์สำหรับอาร์เรย์ที่กล่าวมาข้างต้นจะเป็น:

356

โค้ดสำหรับเรื่องนี้จะเป็น:

const arr = [14, 54, 23, 14, 24, 33, 44, 54, 77, 87, 77, 14];
const nonRepeatingSum = arr => {
  let res = 0;
  for (let i = 0; i < arr.length; i++) {
    if (i !== arr.lastIndexOf(arr[i])) {
      continue;
    }
    res += arr[i];
  }
  return res;
};
console.log(nonRepeatingSum(arr));

ผลลัพธ์บนคอนโซล:

30