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

คูณค่าที่อยู่ในดัชนีคี่ของอาร์เรย์ด้วย JavaScript

เราต้องเขียนฟังก์ชันที่รับอาร์เรย์ของตัวเลขเป็นอาร์กิวเมนต์เดียว ตัวเลขที่อยู่ในดัชนีคู่จะคืนค่าเดิม แต่ตัวเลขที่อยู่ในดัชนีคี่จะต้องคูณกับดัชนีของมันเอง

ตัวอย่างเช่น:

หากอินพุตคือ: [5, 10, 15, 20, 25, 30, 50, 100]
ผลลัพธ์ควรเป็น: [5, 10, 15, 60, 25, 150, 50, 700]

เราจะใช้เมธอด Array.prototype.reduce() เพื่อสร้างอาร์เรย์ที่ต้องการ โค้ดของฟังก์ชันจะเป็นดังนี้:

ตัวอย่างโค้ด

const arr = [5, 10, 15, 20, 25, 30, 50, 100];

const multiplyOdd = (arr) => {
  return arr.reduce((acc, val, ind) => {
    if (ind % 2 === 1) {
      val *= ind;
    }
    return acc.concat(val);
  }, []);
};

console.log(multiplyOdd(arr));

ผลลัพธ์

ผลลัพธ์ในคอนโซลจะเป็นดังนี้:

[5, 10, 15, 60, 25, 150, 50, 700]