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

ผลิตภัณฑ์ของตัวเลขอื่น ๆ ทั้งหมดในอาร์เรย์ใน JavaScript


สมมุติว่าเราต้องเขียนฟังก์ชันที่รับอาร์เรย์ของตัวเลขเป็นอาร์กิวเมนต์ เราต้องคืนค่าอาร์เรย์ใหม่พร้อมกับผลคูณของแต่ละตัวเลข ยกเว้นดัชนีที่เรากำลังคำนวณผลิตภัณฑ์อยู่

ตัวอย่างเช่น ถ้า arr มีดัชนี 5 ตัว และเรากำลังสร้างค่าสำหรับดัชนี 1 ตัวเลขที่ดัชนี 0, 2, 3 และ 4 จะถูกคูณ ในทำนองเดียวกัน หากเรากำลังสร้างค่าสำหรับดัชนี 2 ตัวเลขที่ดัชนี 0, 1, 3 และ 4 จะถูกคูณไปเรื่อยๆ

หมายเหตุ - รับประกันได้ว่าองค์ประกอบทั้งหมดภายในอาร์เรย์นั้นไม่เป็นศูนย์

ก่อนอื่นเราจะลดอาร์เรย์ลงในผลิตภัณฑ์ จากนั้นเราจะวนรอบอาร์เรย์เพื่อหาค่าของดัชนีนั้น เราจะหารผลคูณด้วยค่าเดิมที่ดัชนีนั้น

รหัสสำหรับการทำเช่นนี้จะเป็น -

ตัวอย่าง

const arr = [12, 10, 8, 6, 5, 2];
const produceArray = (arr) => {
   const product = arr.reduce((acc, val) => acc*val);
   return arr.map(el => {
      return product/el;
   });
};
console.log(produceArray(arr));

ผลลัพธ์

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

[ 4800, 5760, 7200, 9600, 11520, 28800 ]