Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/464.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Javascript中获取一年中的某一天_Javascript - Fatal编程技术网

如何在Javascript中获取一年中的某一天

如何在Javascript中获取一年中的某一天,javascript,Javascript,如何根据所选月份和年份获取“一年中的某一天”和“剩余天数”?我设法弄到了这些天,并检查了它是否是跳跃式的,但它很乱。如何改进和缩短这一点?这是一个表,有1-31天和可以更改的月/年。for只会增加值 var year=document.getElementById(“年”).innerHTML; var month=parseFloat(document.getElementById(“month”).innerHTML); var leap=(年份%100==0)?(年份%400==0):(

如何根据所选月份和年份获取“一年中的某一天”和“剩余天数”?我设法弄到了这些天,并检查了它是否是跳跃式的,但它很乱。如何改进和缩短这一点?这是一个表,有1-31天和可以更改的月/年。for只会增加值

var year=document.getElementById(“年”).innerHTML;
var month=parseFloat(document.getElementById(“month”).innerHTML);
var leap=(年份%100==0)?(年份%400==0):(年份%4==0);
document.getElementById(“leap”).innerHTML=leap;

对于Javascript中的(var i=1;i和一般编程来说,处理日期是最难做的事情之一。如何处理闰年、时区、时间变化等?这就是为什么使用外部库总是一个好主意。 现在,这可能是一个不受欢迎的观点,但当涉及到日期时,这是正确的做法

考虑到这一点,我强烈建议使用。在MomentJS中,您可以使用该函数来实现这一点

//我们创建一个now-moment对象,默认为今天。
让今天=时刻();
console.log(today.dayOfYear());

在Javascript和一般编程中,处理日期是最难做的事情之一。如何处理闰年、时区、时间变化等?这就是为什么使用外部库总是一个好主意。 现在,这可能是一个不受欢迎的观点,但当涉及到日期时,这是正确的做法

考虑到这一点,我强烈建议使用。在MomentJS中,您可以使用该函数来实现这一点

//我们创建一个now-moment对象,默认为今天。
让今天=时刻();
console.log(today.dayOfYear());

在这两种情况下,最简单的方法是计算出一个固定在年初的日期,然后简单地除以减去后的毫秒数

下面是使用此技术的两个简单函数

另外,这两种功能都假设当天不包括在内,但您可以根据需要进行更改

const-aDay=1000*60*60*24;
功能开始年份(dt){
常数n=新日期(dt);
n、 设定日期(1);
n、 设定月(0);
n、 设定时间(0);
n、 设置分钟(0);
n、 设置秒(0);
n、 设置毫秒(0);
返回n;
}
功能年度日(dt){
常数st=起始年份(dt);
return Math.trunc(
(dt.getTime()-st.getTime())
/每日+1;
}
函数daysLeft(dt){
常数ed=起始年份(dt);
ed.setFullYear(ed.getFullYear()+1);
return Math.trunc(
(ed.getTime()-dt.getTime())
/每日);
}
var dt=新日期();
log(`Day of the year=${Dayof year(dt)}`);

log(`daysLeft of the year=${daysLeft(dt)}`);
在这两种情况下,最简单的方法是计算出一个固定在年初的日期,然后简单地除以减去后的毫秒数

下面是使用此技术的两个简单函数

另外,这两种功能都假设当天不包括在内,但您可以根据需要进行更改

const-aDay=1000*60*60*24;
功能开始年份(dt){
常数n=新日期(dt);
n、 设定日期(1);
n、 设定月(0);
n、 设定时间(0);
n、 设置分钟(0);
n、 设置秒(0);
n、 设置毫秒(0);
返回n;
}
功能年度日(dt){
常数st=起始年份(dt);
return Math.trunc(
(dt.getTime()-st.getTime())
/每日+1;
}
函数daysLeft(dt){
常数ed=起始年份(dt);
ed.setFullYear(ed.getFullYear()+1);
return Math.trunc(
(ed.getTime()-dt.getTime())
/每日);
}
var dt=新日期();
log(`Day of the year=${Dayof year(dt)}`);

console.log(`daysleftoftheyear=${daysLeft(dt)}');
这回答了你的问题吗?回答了你的问题吗?*满嘴*谢谢!@IceMetalPunk*满嘴*谢谢!@IceMetalPunk