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

รวมองค์ประกอบที่เหมือนกันภายในหนึ่งอาร์เรย์ใน JavaScript


เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่รับอาร์เรย์ของ Numbers

อาร์เรย์อาจมีรายการที่ซ้ำ/ซ้ำกันอยู่ภายใน ฟังก์ชันของเราควรเพิ่มรายการที่ซ้ำกันทั้งหมดและส่งคืนอาร์เรย์ใหม่ที่เกิดขึ้น

ตัวอย่าง

รหัสสำหรับสิ่งนี้จะเป็น −

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));

ผลลัพธ์

และผลลัพธ์ในคอนโซลจะเป็น −

[ 1, 5, 20, 60 ]