当前位置: 首页 > 编程笔记 >

在JavaScript中寻找下一个leap年

劳烨
2023-03-14
本文向大家介绍在JavaScript中寻找下一个leap年,包括了在JavaScript中寻找下一个leap年的使用技巧和注意事项,需要的朋友参考一下

我们需要编写一个函数,该函数需要一个正整数n并返回下一个n个leap年的数组。我们将把这个问题分为三个部分-

第1部分:通过JS查找当前年份

通过JS查找当前年份的代码将是-

// getting the current year from a new instance of Date object
const year = new Date().getFullYear();

第2部分:检查leap年

现在,我们将编写一个isLeap()函数,该函数接受一个数字,并根据该数字是否为a年返回一个布尔值。

如果满足这两个条件中的至少一个,则将一年视为a年-

  • 是400的倍数。

  • 它是4的倍数,而不是100的倍数。

记住这些事情,让我们编写函数isLeap()-

// function to check for a leap year
const isLeap = year => {
   return year % 400 === 0 || (year % 4 === 0 && year % 100 !== 0);
};

第三部分:寻找下一个n年

示例

// function to check for a leap year
const isLeap = year => {
   return year % 400 === 0 || (year % 4 === 0 && year % 100 !== 0);
};
const nextNLeap = n => {
   const arr = [];
   let year = new Date().getFullYear()+1;
   while(arr.length < n){
      if(isLeap(year++)){
         arr.push(year-1);
      };
   };
   return arr;
};
console.log(nextNLeap(5));
console.log(nextNLeap(25));

输出结果

控制台中的输出将为-

[ 2024, 2028, 2032, 2036, 2040 ]
[
   2024, 2028, 2032, 2036, 2040,
   2044, 2048, 2052, 2056, 2060,
   2064, 2068, 2072, 2076, 2080,
   2084, 2088, 2092, 2096, 2104,
   2108, 2112, 2116, 2120, 2124
]
 类似资料:
  • 问题内容: 假设我在数据库中存储了一堆假期。 我需要做的是找出下一个工作日,不包括数据库中定义的星期六和公众假期。 例如。 假设今天是2月15日(星期五),而17日和18日是公众假期(在数据库中定义为日期时间)。因此,现在当我按下显示下一个工作日的按钮时,它将返回2月19日。 哪种方法最有效? 问题答案: 最简单 第1步:从数据库获取假期并将其格式化为您的格式,并将其保留在 第2步:创建一个增加天

  • 我试图写一个算法,它需要可变数量的通用数组,存储在中,并收集其中所有唯一的元素(元素只发生一次),并将其存储在一个数组中,称为。例如,数组: 将生成包含内容的数组。 以下是我当前的流程算法: 请注意,是一个数组,它包含

  • 如何在数据集中找到几个最小值中的第一个?我希望至少2大于最小值。 例如, 我想将df['value'][0]或者简单地说(0.6)标识为这个数组中的第一个最小值。然后将df[‘值’][4]或(2.8)确定为至少比第一个确定的最小值(0.6)大2的值。 这适用于其他数据集,但在最小值为第一个时不适用。 理想的输出是: 正如评论中建议的那样,循环将是更好的方法。

  • 问题内容: 我刚刚设置了Ubuntu工作站,并想向eclipse.ini添加一些设置。当我搜索文件时,我发现: /etc/eclipse.ini /usr/lib/eclipse.ini 我的问题是: Eclipse实际上是否同时使用两个文件? 如果是这样,它将以什么顺序读取它们? 它如何合并它们? 我找到的两个文件都是系统范围的文件,我的主目录中是否可以放置仅影响实例的目录? 问题答案: 只有一

  • 在C++中,给定两个值a,b使得a<=b,x等于a或b,如何有效地得到另一个值y(如果a==b,最终等于x)?

  • 本文向大家介绍寻找一数组中前K个最大的数相关面试题,主要包含被问及寻找一数组中前K个最大的数时的应答技巧和注意事项,需要的朋友参考一下 考察点:数组