gpt4 book ai didi

JavaScript 日期序列号

转载 作者:行者123 更新时间:2023-11-28 06:11:19 25 4
gpt4 key购买 nike

注意:我无法使用日期函数

目标:将 1900 年 1 月 1 日到 2199 年 12 月 31 日之间的日期转换为 1 到 109573 之间的序列号。如果日期无效,则返回 0。

示例:

  1. dateSerialNumber( 1, 1,1900) 返回 1
  2. dateSerialNumber(21, 3,2012) 返回 40988
  3. 日期序列号(31,12,2199) 返回 109573
  4. dateSerialNumber(31,12,1899) 返回 0
  5. dateSerialNumber(31,13,2000) 返回 0
  6. dateSerialNumber(29, 2,1991) 返回 0

更多示例: Examples of serial number by year

我还应该使用我已经编码的函数:

  1. dateValid(intDay, intMonth, intYear)
  2. numberDaysInYear(intYear)
  3. numberDaysInMonth(intMonth, intYear)

1)

function dateValid(intDay, intMonth, intYear) {
if ((intYear >= 1900 && intYear <= 2199) && (intMonth >= 1 && intMonth <= 12)
&& (intDay >= 1 && intDay <= numberDaysInMonth(intMonth, intYear))) {
return true;
}else return false;

}

2)

function numberDaysInYear(intYear) {
if(bissextile(intYear)) return '366'
else return '365'
}

3)

function numberDaysInMonth(intMonth, intYear) {
return new Date(intYear, intMonth, 0).getDate();
}

最佳答案

if(!dateValid(intDay, intMonth, intYear))
return 0

var serialNumber = 0

for (var i = 1900; i < intYear; i++)
serialNumber += numberDaysInYear(i)

for (var i = 1; i < intMonth; i++)
serialNumber += numberDaysInMonth(i, intYear)

return serialNumber + intDay

关于JavaScript 日期序列号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36369312/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com