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

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

เราต้องเขียนฟังก์ชัน JavaScript ที่รับอาร์เรย์ตัวเลขซึ่งอาจมีค่าซ้ำ ฟังก์ชันควรคืนค่าผลรวมของสมาชิกที่ไม่ซ้ำกัน (ปรากฏเพียงครั้งเดียวในอาร์เรย์)

ตัวอย่างเช่น หากอาร์เรย์อินพุตคือ:

const arr = [2, 5, 5, 3, 2, 7, 4, 9, 9, 11];

ผลลัพธ์ควรเป็น 25

เราจะใช้ลูป for วนผ่านอาร์เรย์และคืนค่าผลรวมของสมาชิกที่ไม่ซ้ำ

ตัวอย่าง

โค้ดต่อไปนี้เป็นตัวอย่าง:

const arr = [2, 5, 5, 3, 2, 7, 4, 9, 9, 11];

const sumUnique = arr => {
  let res = 0;
  for(let i = 0; i < arr.length; i++){
    if(arr.indexOf(arr[i]) !== arr.lastIndexOf(arr[i])){
      continue;
    };
    res += arr[i];
  };
  return res;
};

console.log(sumUnique(arr));

ผลลัพธ์

จะแสดงผลในคอนโซลดังนี้:

25