我已经进行了一些搜索,但要么没有找到合适的示例,要么可能我还不能完全掌握一些概念。
我正在尝试编写一个函数,让用户输入一个日期(从表单中)并在接下来的 50 年中每年返回该日期为星期五的日期。我确信我最初的方法存在一些问题,但我主要担心的是 .plusYears() 函数不起作用。感谢您的任何反馈!
<script>
function date() {
var weekday = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'];
var input = document.getElementById("input").value;
var date = new Date(input).getUTCDate();
console.log("date: " + date);
for (var i = 0; i < 50; i++){
date = date.plusYears(i);
console.log("date: " + date);
if(date.getDay() == 6){
document.getElementById('output').textContent = date.getDate() + ", " + weekday[date];
}
}
}
</script>
<form>
<input type="date" placeholder="dd:mm:yy" id="input" />
<input type="button" value="weekday" onclick="date()" />
</form>
<p id="output"></p>
编辑:
function date() {
var input = document.getElementById("input").value;
var date = new Date(input);
for (var i = 0; i < 50; i++) {
var y = 1;
date = new Date(date.getFullYear() + y, date.getMonth(), date.getDate());
if(date.getDay() == 5){
console.log("friday" + date);
}
else{
console.log("other day");
}
}
}
不确定为什么控制台显示的日期早于用户输入的日期。
最佳答案
plusYear()?你从哪里得到这个功能?
尝试类似的事情
date.setFullYear(date.getFullyear() + i);
应该可以。
关于javascript - 查找任何一年中的星期几,plusYears() 函数不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52680433/