javascript - 查找任何一年中的星期几,plusYears() 函数不起作用

标签 javascript html date

我已经进行了一些搜索,但要么没有找到合适的示例,要么可能我还不能完全掌握一些概念。

我正在尝试编写一个函数,让用户输入一个日期(从表单中)并在接下来的 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/

相关文章:

javascript - 如何缓存 sencha touch 文件以提高性能

javascript - 当我执行 Grunt gruntserve :dist 时出现错误

javascript - 使用express服务器打开新的html页面

html - 同一行的内联元素 : how can i do?

Javascript 数组动态填充

vba - Excel VBA 创建日期+时间值

java - SimpleDateFormat 在不同的时区 JVM 中表现不同

javascript - 即使添加了很多延迟后,焦点也无法在 IE 中工作

javascript - 使用输入在 JavaScript 中分类

oracle - 使用to_char函数解析为字符串时,如何从Oracle中的日和月值中删除前导零?