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

อัลกอริทึมเติมอาร์เรย์ด้วยศูนย์ก่อนและหลังค่าอย่างไดนามิกใน JavaScript

เราได้รับอาร์เรย์เดือน ซึ่งมีสมาชิกน้อยกว่า 12 ตัว แต่ละตัวอยู่ระหว่าง 1 ถึง 12 (รวม) หน้าที่คือรับอาร์เรย์นี้และสร้างอาร์เรย์เดือนเต็ม 12 สมาชิก หากสมาชิกมีอยู่ในอาร์เรย์ต้นทาง ใช้สมาชิกนั้น มิฉะนั้น ใช้ 0

เช่น

Input → [5, 7, 9]
Output → [0, 0, 0, 0, 5, 0, 7, 0, 9, 10, 0, 0]

เขียนโค้ด

ตัวอย่าง

const months = [6, 7, 10, 12];
const completeMonths = (arr) => {
  const completed = [];
  for(let i = 1; i <= 12; i++){
    if(arr.includes(i)){
      completed.push(i);
    }else{
      completed.push(0);
    }
  };
  return completed;
};
console.log(completeMonths(months));

เราวนลูป 1 ถึง 12 ตรวจสอบว่าอาร์เรย์ต้นทางมีสมาชิกปัจจุบันหรือไม่ ถ้ามี push สมาชิกนั้น มิฉะนั้น push 0

ผลลัพธ์

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

[ 0, 0, 0, 0, 0, 6, 7, 0, 0, 10, 0, 12 ]