Javascript日期函数新日期()的浏览器兼容性问题
同一语言Javascript在不同的浏览器中有不同的语言兼容性问题。本质上,这是因为不同的浏览器受到不同语言标准和实现的支持。本文将基于新的日期创建日期对象来分析这个问题。1。提出了启动时间和结束时间空间不能正确传输的问题。
在页面中,我们使用一个时间组件来开发时间选择框,但是我们发现它在Firefox下不能正常工作,并且它可以在Chrome下正常运行。问题在哪里
2分析。问题
结果被发现是由以下代码引起的:
VaR的开始时间= '2010-05-04;
无功timeend = '2015-09-05;
VAR时间=(开始时间+ '00:00:00)。ToString();
VAR时间=(timeend + '23:59:59)。ToString();
开始时间=新的日期(时间);
timeend =新的日期(时间);
问题是,新的日期(时间)来纠正这个构造函数生成一个数据对象,它的价值是楠。奇怪,问题在哪里
三.在各种浏览器上的性能
IE下的实现:
Firefox下的实现:
Chrome下的实现:
从上面的分析中,您可以了解到Javascript脚本可以在Chrome下正确地执行,但在其他浏览器中报告错误。
4。正确的实践
下面列出了正确的方法:
VAR时间=(开始时间+ '00:00:00)。ToString();
VAR时间=(timeend + '23:59:59)。ToString();
开始时间=新的日期(Date.parse(time1.replace( / / g, / )))GetTime();
timeend =新的日期(Date.parse(time2.replace( / / g, / )))GetTime();
是默认的日期格式转换的主要更改,日期字符串格式的基础上,是广泛的支持,每个浏览器,日期字符串连接,它只能正常工作下铬。
5。知识点总结
2015-09-05'is不能够正确使用各种浏览器生成新的日期Date对象(STR)。正确的用法是'2015 / 09 / 06。