我的 Javascript 函数有效,但报告了错误的星期几。有些日子它有效,但有些没有。例如,1991 年 1 月 22 日正确报告为星期二,但 1994 年 4 月 4 日报告错误。这是如何固定的?
另外我如何实现一个返回“你来自未来?!”的条件 如果用户提供了未来的日期。
到目前为止,这是我的功能。
//ask user for birthday
var birthday = window.prompt("What is your birthday? (MM-DD-YYYY)", "");
var birthdayArray = birthday.split('-');
//validate entry is correct
if(birthdayArray.length !==3){
alert("invalid date")
}
//validate if date format is correct
else{
if(!birthdayArray[0].match(/^\d\d$/) ||
!birthdayArray[1].match(/^\d\d$/) ||
!birthdayArray[2].match(/^\d\d\d\d$/)){
alert("invalid date");
}
///take user input and find weekday
else{var weekDays = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday','Friday', 'Saturday'];
var userDate = new Date(
parseInt(birthdayArray[0])-1,
parseInt(birthdayArray[1])-2, …Run Code Online (Sandbox Code Playgroud)