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 相关文章推荐
9个javascript语法高亮插件 推荐
Jul 18 Javascript
JavaScript操作XML实例代码(获取新闻标题并分页,并分页)
May 25 Javascript
jquery attr 设定src中含有&amp;(宏)符号问题的解决方法
Jul 26 Javascript
dtree 网页树状菜单及传递对象集合到js内,动态生成节点
Apr 14 Javascript
网页右下角弹出窗体实现代码
Jun 05 Javascript
JavaScript中的this关键字使用方法总结
Mar 13 Javascript
jquery实现具有嵌套功能的选项卡
Feb 12 Javascript
JavaScript基础语法之js表达式
Jun 07 Javascript
vue如何在自定义组件中使用v-model
May 14 Javascript
微信小程序 image组件遇到的问题
May 28 Javascript
antd vue 刷新保留当前页面路由,保留选中菜单,保留menu选中操作
Aug 06 Javascript
vue使用exif获取图片经纬度的示例代码
Dec 11 Vue.js
浅析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
php微信公众平台配置接口开发程序
2016/09/22 PHP
php中遍历二维数组并以表格的形式输出的方法
2017/01/03 PHP
实例:尽可能写友好的Javascript代码
2006/10/09 Javascript
jQuery Div中加载其他页面的实现代码
2009/02/27 Javascript
Ext.FormPanel 提交和 Ext.Ajax.request 异步提交函数的区别
2009/11/12 Javascript
aspx中利用js实现确认删除代码
2010/07/22 Javascript
jqgrid 简单学习笔记
2011/05/03 Javascript
jquery幻灯片插件bxslider样式改进实例
2014/10/15 Javascript
在javascript中随机数 math random如何生成指定范围数值的随机数
2015/10/21 Javascript
JavaScript 随机验证码的生成实例代码
2016/09/22 Javascript
微信小程序 聊天室简单实现
2017/04/19 Javascript
Angularjs中使用轮播图指令swiper
2017/05/30 Javascript
JS 学习总结之正则表达式的懒惰性和贪婪性
2017/07/03 Javascript
微信小程序实现鼠标拖动效果示例
2017/12/01 Javascript
详解使用angular框架离线你的应用(pwa指南)
2019/01/31 Javascript
Webpack 4如何动态切割JS注入文件名详解
2019/07/09 Javascript
es6函数之严格模式用法实例分析
2020/03/17 Javascript
vue用ant design中table表格,点击某行时触发的事件操作
2020/10/28 Javascript
[01:54]胎教DOTA2 准妈妈玩家现身中国区预选赛
2016/06/26 DOTA
[54:02]2018DOTA2亚洲邀请赛 4.1 小组赛 B组 IG vs VGJ.T
2018/04/03 DOTA
Python实现的数据结构与算法之队列详解
2015/04/22 Python
python实现的DES加密算法和3DES加密算法实例
2015/06/03 Python
python 显示数组全部元素的方法
2018/04/19 Python
python dataframe常见操作方法:实现取行、列、切片、统计特征值
2018/06/09 Python
11个Python Pandas小技巧让你的工作更高效(附代码实例)
2019/04/30 Python
Pytorch之parameters的使用
2019/12/31 Python
Pytorch 实现sobel算子的卷积操作详解
2020/01/10 Python
python将下载到本地m3u8视频合成MP4的代码详解
2020/11/24 Python
mac系统下安装pycharm、永久激活、中文汉化详细教程
2020/11/24 Python
师范生教师实习自我鉴定
2013/09/27 职场文书
青年志愿者活动总结
2014/04/26 职场文书
社区爱国卫生月活动总结
2014/06/30 职场文书
党的群众路线教育实践活动心得体会(教师)
2014/10/31 职场文书
工作证明书
2015/06/15 职场文书
读《方与圆》有感:交友方圆有度
2020/01/14 职场文书
MYSQL 的10大经典优化案例场景实战
2021/09/14 MySQL