注意:我无法使用日期功能
目标:将日期从1900年1月1日开始转换为2199年12月31日,序列号从1到109573不等。如果日期无效,则返回0。
示例:
更多示例: Examples of serial number by year
我还应该使用我已编码的函数:
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();
}
答案 0 :(得分:0)
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