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

คำนวณค่าเฉลี่ยสำหรับอาร์เรย์ย่อยแต่ละรายการแยกกัน แล้วส่งคืนผลรวมของค่าเฉลี่ยทั้งหมดใน JavaScript


สมมุติว่าเรามีอาร์เรย์ของจำนวนเต็มแบบนี้ -

const arr = [
   [1, 2, 3],
   [4, 5, 6]
];

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

ดังนั้น สำหรับอาร์เรย์ข้างต้น ผลลัพธ์ควรเป็น −

2 + 5 = 7

ตัวอย่าง

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

const arr = [
   [1, 2, 3],
   [4, 5, 6]
];
const sumAverage = (arr = []) => {
   const average = arr.reduce((acc, val) => {
      const total = val.reduce((total, num) => total += num, 0);
      return acc += total / val.length;
   }, 0);
   return Math.round(average);
};
console.log(sumAverage(arr));

ผลลัพธ์

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

7