Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Tổng các phần tử giống nhau trong một mảng trong JavaScript


Chúng ta cần viết một hàm JavaScript nhận một mảng số.

Mảng có thể chứa một số mục trùng lặp / lặp lại. Hàm sẽ cộng tất cả các mục trùng lặp và trả về mảng mới được hình thành như vậy.

Ví dụ

Mã thực hiện:

const arr = [20, 20, 20, 10, 10, 5, 1];
const sumIdentical = (arr = []) => {
  let map = {};
  for (let i = 0; i < arr.length; i++) {
    let el = arr[i];
    map[el] = map[el] ? map[el] + 1 : 1;
  }
  const res = [];
  for (let count in map) {
    res.push(map[count] * count);
  }
  return res;
};
console.log(sumIdentical(arr));

Kết quả

Kết quả trong console:

[ 1, 5, 20, 60 ]