gpt4 book ai didi

javascript - 验证给定月份的天数

转载 作者:行者123 更新时间:2023-12-02 23:39:39 26 4
gpt4 key购买 nike

性能对于这个家伙来说是最重要的......这东西需要快如闪电!


您如何验证给定月份的天数?

我的第一个想法是创建一个包含给定月份的天数的数组,索引代表月份:

var daysInMonth = [
31, // January
28, // February
31, // March
etc.
];

然后按照以下方式做一些事情:

function validateDaysInMonth(days, month)
{
if (days < 1 || days > daysInMonth[month]) throw new Error("Frack!");
}

但是...闰年怎么样?如何实现闰年检查并保持函数运行相对较快?


更新:我希望你们向我展示一些代码,这些代码可以验证月份中的日期 - 闰年。

这是描述今天使用的逻辑的流程图:


(来源:about.com)

最佳答案

function daysInMonth(m, y) { // m is 0 indexed: 0-11
switch (m) {
case 1 :
return (y % 4 == 0 && y % 100) || y % 400 == 0 ? 29 : 28;
case 8 : case 3 : case 5 : case 10 :
return 30;
default :
return 31
}
}

function isValid(d, m, y) {
return m >= 0 && m < 12 && d > 0 && d <= daysInMonth(m, y);
}

关于javascript - 验证给定月份的天数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1433030/

26 4 0
文章推荐: mongodb - Elasticsearch River(mongodb),建模架构
文章推荐: javascript - 如何从文本文件中获取文本并将其显示在 中?