js字符串日期yyyy-MM-dd转化为date示例代码


Posted in Javascript onMarch 06, 2014

最近遇到一个问题,就是获取表单中的日期往后台通过json方式传的时候,遇到Date.parse(str)函数在ff下报错: NAN

找了些资料,发现是由于Date.parse()函数对日期格式有要求:详细参考 Date.parse函数

对于js操作日期:

创建一个日期对象:

var objDate=new Date([arguments list]);

参数形式有以下5种:

view plainnew Date("month dd,yyyy hh:mm:ss"); 
new Date("month dd,yyyy"); 
new Date(yyyy,mth,dd,hh,mm,ss); 
new Date(yyyy,mth,dd); 
new Date(ms);

说明:

month:用英文表示月份名称,从January到December
mth:用整数表示月份,从0(1月)到11(12月)
Content

dd:表示一个月中的第几天,从1到31
yyyy:四位数表示的年份
hh:小时数,从0(午夜)到23(晚11点)
mm:分钟数,从0到59的整数
ss:秒数,从0到59的整数
ms:毫秒数,为大于等于0的整数,表示的是需要创建的时间和GMT时间1970年1月1日之间相差的毫秒数。

我发现了:

Javascript中日期的构造还可以支持 new Date("yyyy/MM/dd"); 其中:MM是整数表示月份从0(1月)到11(12月),这样再利用正则表达式就很方便地能够转换字符串日期了。

测试代码:

<mce:script type="text/javascript"><!-- 
document.write("<br/>" + new Date("February 3,2009")); 
document.write("<br/>" + new Date("February 3,2009 10:52:03")); 
document.write("<br/>"); 
document.write("<br/>" + new Date(2009,1,3)); 
document.write("<br/>" + new Date(2009,1,3,10,52,03)); 
document.write("<br/>"); 
document.write("<br/>" + new Date(Date.parse("February 3,2009"))); 
document.write("<br/>" + new Date(Date.parse("February 3,2009 10:52:03"))); 
document.write("<br/>" + new Date(Date.parse(2009,1,3))); //Output: NAN 
document.write("<br/>" + new Date(Date.parse(2009,1,3,10,52,03))); //Output: NAN 
document.write("<br/>" + new Date(Date.parse("2009/02/03"))); 
document.write("<br/>"); 
document.write("<br/>" + new Date("2009/02/03")); 
document.write("<br/>" + new Date("2009/02/03 11:12:13")); 
document.write("<br/>" + new Date("2009-02-03")); //Output: NAN // --></mce:script>

输出结果:

Tue Feb 3 00:00:00 UTC+0800 2009
Tue Feb 3 10:52:03 UTC+0800 2009

Tue Feb 3 00:00:00 UTC+0800 2009
Tue Feb 3 10:52:03 UTC+0800 2009

Tue Feb 3 00:00:00 UTC+0800 2009
Tue Feb 3 10:52:03 UTC+0800 2009
NaN
NaN
Tue Feb 3 00:00:00 UTC+0800 2009

Tue Feb 3 00:00:00 UTC+0800 2009
Tue Feb 3 11:12:13 UTC+0800 2009
NaN
-------------------

window.onload=function(){ 
var dependedVal="2005-3-4"; 
//根据日期字符串转换成日期 
var regEx = new RegExp("\\-","gi"); 
dependedVal=dependedVal.replace(regEx,"/"); 
//dependedVal=dependedVal.replace("\\-","/");//这样不行 
alert(dependedVal) 
//parse 需要 2005/3/4 这种格式 
var milliseconds=Date.parse(dependedVal); 
alert(milliseconds) 
var dependedDate=new Date(); 
dependedDate.setTime(milliseconds); var now = new Date(); 
//注意括号,优先级问题,无奈 
alert("相隔年数:"+(now.getFullYear() - dependedDate.getFullYear())); 
}

其实日期在浏览器和服务器之间传输都要通过毫秒值来传,否则就会报错 400错误!
Javascript 相关文章推荐
JavaScript类和继承 prototype属性
Sep 03 Javascript
Jquery post传递数组方法实现思路及代码
Apr 28 Javascript
jQuery 删除或是清空某个HTML元素示例
Aug 04 Javascript
JS通过ajax动态读取xml文件内容的方法
Mar 24 Javascript
javascript实现将文件保存到本地方法汇总
Jul 26 Javascript
jQuery中的insertBefore(),insertAfter(),after(),before()区别介绍
Sep 01 Javascript
VUE axios发送跨域请求需要注意的问题
Jul 06 Javascript
vue项目中应用ueditor自定义上传按钮功能
Apr 27 Javascript
JavaScript实现创建自定义对象的常用方式总结
Jul 09 Javascript
基于vue中keep-alive缓存问题的解决方法
Sep 21 Javascript
Js on及addEventListener原理用法区别解析
Jul 11 Javascript
详解vue父子组件状态同步的最佳方式
Sep 10 Javascript
浅析JS中document对象的一些重要属性
Mar 06 #Javascript
浅析jquery的js图表组件highcharts
Mar 06 #Javascript
JavaScript利用构造函数和原型的方式模拟C#类的功能
Mar 06 #Javascript
javascript简单实现命名空间效果
Mar 06 #Javascript
深入剖析JavaScript中的枚举功能
Mar 06 #Javascript
javascript模拟枚举的简单实例
Mar 06 #Javascript
js模拟C#中List的简单实例
Mar 06 #Javascript
You might like
Youku 视频绝对地址获取的方法详解
2013/06/26 PHP
CI分页类首页、尾页不显示的解决方法
2016/03/28 PHP
PHP 将数组打乱 shuffle函数的用法及简单实例
2016/06/17 PHP
laravel5.5安装jwt-auth 生成token令牌的示例
2019/10/24 PHP
PHP如何使用cURL实现Get和Post请求
2020/07/11 PHP
用js计算页面执行时间的函数
2006/12/07 Javascript
jQuery使用手册之 事件处理
2007/03/24 Javascript
锋利的jQuery 要点归纳(三) jQuery中的事件和动画(上:事件篇)
2010/03/24 Javascript
关于文本框的一些限制控制总结~~
2010/04/15 Javascript
各浏览器对link标签onload/onreadystatechange事件支持的差异分析
2011/04/27 Javascript
用js一次改变多个input的readonly属性值的方法
2014/06/11 Javascript
javascript获取元素偏移量的方法有哪些
2014/06/24 Javascript
在JavaScript里防止事件函数高频触发和高频调用的方法
2014/09/06 Javascript
基于javascript实现图片滑动效果
2016/05/07 Javascript
JavaScript 继承详解(五)
2016/10/11 Javascript
微信小程序 欢迎页面的制作(源码下载)
2017/01/09 Javascript
JavaScript初学者必看“new”
2017/06/12 Javascript
Node.js中使用mongoose操作mongodb数据库的方法
2017/09/12 Javascript
mint-ui在vue中的使用示例
2018/04/05 Javascript
详解key在Vue列表渲染时究竟起到了什么作用
2019/04/20 Javascript
新手入门带你学习JavaScript引擎运行原理
2019/06/24 Javascript
[01:39:04]DOTA2-DPC中国联赛 正赛 SAG vs CDEC BO3 第二场 2月1日
2021/03/11 DOTA
在Python下利用OpenCV来旋转图像的教程
2015/04/16 Python
matplotlib subplots 设置总图的标题方法
2018/05/25 Python
pandas 强制类型转换 df.astype实例
2020/04/09 Python
python属于解释语言吗
2020/06/11 Python
html+css实现自定义图片上传按钮功能
2019/09/04 HTML / CSS
html5 Canvas画图教程(5)—canvas里画曲线之arc方法
2013/01/09 HTML / CSS
nohup的用法
2014/08/10 面试题
旅游专业毕业生自荐书
2014/06/30 职场文书
初中同学会活动方案
2014/08/22 职场文书
甲乙双方合作协议书
2014/10/13 职场文书
运动会广播稿200米(5篇)
2014/10/15 职场文书
2015年感恩节活动总结
2015/03/24 职场文书
酒店销售经理岗位职责
2015/04/02 职场文书
职工趣味运动会开幕词
2016/03/04 职场文书