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

การลดองค์ประกอบอาร์เรย์เป็นอัตราต่อรองทั้งหมดใน JavaScript


ปัญหา

เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่ใช้ในอาร์เรย์ หน้าที่ของเราควรเปลี่ยนหมายเลขอาร์เรย์เช่นนี้ -

  • หากตัวเลขเป็นเลขคี่ ให้เปลี่ยน
  • ถ้าตัวเลขเป็นเลขคู่ ให้ลบ 1 ออกจากตัวเลขนั้น

และเราควรคืนค่าอาร์เรย์ใหม่

ตัวอย่าง

ต่อไปนี้เป็นรหัส -

const arr = [5, 23, 6, 3, 66, 12, 8];
const reduceToOdd = (arr = []) => {
   const res = [];
   for(let i = 0; i < arr.length; i++){
      const el = arr[i];
      if(el % 2 === 1){
         res.push(el);
      }else{
         res.push(el - 1);
      };
   };
   return res;
};
console.log(reduceToOdd(arr));

ผลลัพธ์

ต่อไปนี้เป็นเอาต์พุตคอนโซล -

[ 5, 23, 5, 3, 65, 11, 7 ]