เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่ใช้เวลาสองวันในรูปแบบ 'YYYY-MM-DD' เป็นอาร์กิวเมนต์ที่หนึ่งและที่สองตามลำดับ จากนั้นฟังก์ชันควรคำนวณและส่งกลับจำนวนวันระหว่างวันที่สองวัน
ตัวอย่างเช่น −
หากวันที่ป้อนเป็น −
const str1 = '2020-05-21'; const str2 = '2020-05-25';
จากนั้นผลลัพธ์ควรเป็น −
const output = 4;
ตัวอย่าง
const str2 = '2020-05-25'; const daysBetweenDates = (str1, str2) => { const leapYears = (year, month) => { if (month <= 2){ --year; }; let floor = Math.floor; return floor(year / 400) + floor(year / 4) - floor(year / 100); }; let monthDays = [0, 0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30]; for (let i = 1; i < monthDays.length; ++i){ monthDays[i] += monthDays[i - 1]; }; let days = (year, month, d) => (year * 365) + leapYears(year, month) + monthDays[month] + d; let p = days(...str1.split('-').map(Number)); let q = days(...str2.split('-').map(Number)); return Math.abs(p - q); }; console.log(daysBetweenDates(str1, str2));
ผลลัพธ์
และผลลัพธ์ในคอนโซลจะเป็น −
4