在JavaScript中查找闰年和非闰年中的第n天

问题

我们需要编写一个JavaScript函数,将数字作为第一个参数,布尔值作为第二个参数。

布尔值指定闰年(如果为真)。基于这些信息,我们的函数应该返回一年中第 n 天的日期。

示例

以下是代码-

const day = 60;

const isLeap = true;

const findDate = (day = 1, isLeap = false) => {

   if(day > 366){

      return undefined;

   };

   const months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];

   const days = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];

   if(isLeap){

      days[1]++;

   };

   let i = -1, count = 0;

   while(count < day){

      i++;

      count += days[i];

   };

   const upto = days.slice(0, i).reduce((acc, val) => acc + val);

   const month = months[i];

   const d = count - upto;

   return `${month}, ${d}`;

};

console.log(findDate(day, isLeap));

输出结果

以下是控制台输出-

Feb, 29

以上是 在JavaScript中查找闰年和非闰年中的第n天 的全部内容, 来源链接: utcz.com/z/357780.html

回到顶部