Javascript .getDay()不在IE和Safari中工作

Javascript .getDay()不在IE和Safari中工作,javascript,jquery,html,internet-explorer,safari,Javascript,Jquery,Html,Internet Explorer,Safari,我正在尝试编程日历,用户可以在其中选择约会日期。日历本身在Firefox和Chrome中运行良好,但在IE和Safari中却无法正常工作。我将代码分解以查找导致问题的行: var firstday = new Date(kalenderYear + "," + kalenderMonth + ",01").getDay(); “firstday”应该是该月第一天的工作日(例如10月的“3”,因为10月的1日是星期三) 这行代码只在Chrome和Firefox中有效。有什么办法可以让它在所有主流

我正在尝试编程日历,用户可以在其中选择约会日期。日历本身在Firefox和Chrome中运行良好,但在IE和Safari中却无法正常工作。我将代码分解以查找导致问题的行:

var firstday = new Date(kalenderYear + "," + kalenderMonth + ",01").getDay();
“firstday”应该是该月第一天的工作日(例如10月的“3”,因为10月的1日是星期三)


这行代码只在Chrome和Firefox中有效。有什么办法可以让它在所有主流浏览器中运行吗?

我不知道这是否能解决您的问题,因为您还没有发布所有代码,但应该是这样的:

var firstday = new Date(kalenderYear, kalenderMonth, 1, 0, 0, 0, 0).getDay();
尝试:

打印星期几,今天是星期三,然后是第3天
再见

您的控制台有错误吗?我在设置变量“firstday”后输出了它。在Chrome和Firefox中,这只是工作日。在Safari和IE的“NaN”中。但是没有真正的错误。看起来不是有效的。看看我的答案。您使用的是字符串,而不是创建日期所需的数字。我尝试过,但IE仍然将“NaN”作为“firstday”的值输出,那么您的问题就更大了。使用console.log(kalendarYear,kalendarMonth);也可以尝试使用var firstday=newdate(parseInt(kalenderYear),parseInt(kalenderMonth),1.getDay();仍然没有工作,但是谢谢!这两个变量(kalenderYear,kalenderMonth)都是整数。IE不喜欢所有的日期格式,所以请尝试在其中包含时间数,例如:var firstday=new date(kalenderYear,kalenderMonth,1,0,0,0).getDay();
var data = new Date();
var dateOfWeek = data.getDay();