宇筱博客

  • 解决办法
  • 学无止境
  • 记录时光
  • 百宝箱
宇筱博客
点滴记忆,汇聚成海。
  1. 首页
  2. 解决办法
  3. 正文

javascript中如何正确将日期(Date)字符串转换为日期(Date)对象

2020年1月2日 447点热度 0人点赞 0条评论

温馨提醒:日期直接需要用"/",不要用"-"

代码:

var sDate1 = "2008/04/02";
var sDate2 = "2005/03/01";

var oDate1 = new Date(sDate1);
var oDate2 = new Date(sDate2);

if (oDate1 & gt; oDate2) //输出 2008/04/02 大于 2005/03/01
{
    document.write(sDate1 + " 大于 " + sDate2);
}
else
{
    document.write(sDate1 + " 小于(等于) " + sDate2);
}

document.write("<br/>" + new Date("2000/01/02")); //输出Sun Jan 2 00:00:00 UTC+0800 2000
document.write("<br/>" + Date("2000/01/02")); //输出Wed Dec 05 10:18:33 2007
document.write("<br/>" + new Date("2000-01-02")); //输出NaN
document.write("<br/>" + Date("2000-01-02")); //输出Wed Dec 05 10:18:33 2007

Date(日期)型字符串,要想正确的转换为Date(日期)对象,必须用new Date(str)方式,直接用Date(str)强制转换将得到错误结果,另外转换时Date字符串的格式为"年/月/日"(也许还有其它写法,这里只测试了yyyy/mm/dd确实是可行的),而另一种很常见的"年-月-日"的表示方式,转换后将得到错误结果

另外,要计算二个日期的差值,比如相差多少天,可以用

date2.getTime()/(1000*60*60*24) - date1.getTime()/(1000*60*60*24)

如果要给某个日期加几天,可以参考下面的代码:

var pickupDate = new Date('2010/02/01');

var newDate = new Date();

newDate.setTime(pickupDate.getTime()+(3*24*60*60*1000)); //给pickupDate加了3天,然后赋值给newDate

原文链接:https://www.cnblogs.com/yjmyzz/archive/2007/12/05/983265.html

标签: 暂无
最后更新:2020年1月2日

小渔民

这个人很懒,什么都没留下

点赞
< 上一篇
下一篇 >

文章评论

razz evil exclaim smile redface biggrin eek confused idea lol mad twisted rolleyes wink cool arrow neutral cry mrgreen drooling persevering
取消回复

COPYRIGHT © 2025 宇筱博客. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang

豫ICP备15017825号-2