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 相关文章推荐
myeclipse安装jQuery插件的方法
Mar 29 Javascript
Javascript代码在页面加载时的执行顺序介绍
May 03 Javascript
用jquery存取照片的具体实现方法
Jun 30 Javascript
js操作table示例(个人心得)
Nov 29 Javascript
AngularJS Module方法详解
Dec 08 Javascript
使用jQuery判断Div是否在可视区域的方法 判断div是否可见
Feb 17 Javascript
JavaScript基本类型值-Number类型
Feb 24 Javascript
JavaScript实现封闭区域布尔运算的示例代码
Jun 25 Javascript
VUE2.0+ElementUI2.0表格el-table循环动态列渲染的写法详解
Nov 30 Javascript
jQuery 判断元素是否存在然后按需加载内容的实现代码
Jan 16 jQuery
微信小程序实现限制用户转发功能的实例代码
Feb 22 Javascript
Vue实现简易计算器
Feb 25 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
修改php.ini实现Mysql导入数据库文件最大限制的修改方法
2007/12/11 PHP
fleaphp常用方法分页之Pager使用方法
2011/04/23 PHP
php获取汉字拼音首字母的方法
2015/10/21 PHP
php mysql procedure实现获取多个结果集的方法【基于thinkPHP】
2016/11/09 PHP
PHP mongodb操作类定义与用法示例【适合mongodb2.x和mongodb3.x】
2018/06/16 PHP
使用jQuery.Validate进行客户端验证(初级篇) 不使用微软验证控件的理由
2010/06/28 Javascript
Jquery常用技巧收集整理篇
2010/11/14 Javascript
jQuery EasyUI API 中文文档 - Documentation 文档
2011/09/29 Javascript
js实现拖拽 闭包函数详细介绍
2012/11/25 Javascript
前台js调用后台方法示例
2013/12/02 Javascript
IE6已终止操作问题的2种情况及解决
2014/04/23 Javascript
第四章之BootStrap表单与图片
2016/04/25 Javascript
浅析jquery数组删除指定元素的方法:grep()
2016/05/19 Javascript
jQuery ajax 当async为false时解决同步操作失败的问题
2016/11/18 Javascript
利用Angular.js编写公共提示模块的方法教程
2017/05/28 Javascript
vue.js异步上传文件前后端实现代码
2017/08/22 Javascript
深入探讨JavaScript的最基本部分之执行上下文
2019/02/12 Javascript
使用vue实现多规格选择实例(SKU)
2019/08/23 Javascript
Javascript实现鼠标移入方向感知
2020/06/24 Javascript
Vue切换Tab动态渲染组件的操作
2020/09/21 Javascript
[01:01:43]EG vs VP 2018国际邀请赛淘汰赛BO3 第二场 8.24
2018/08/25 DOTA
Python里隐藏的“禅”
2014/06/16 Python
Python实现删除文件但保留指定文件
2015/06/21 Python
Python开发如何在ubuntu 15.10 上配置vim
2016/01/25 Python
django2用iframe标签完成网页内嵌播放b站视频功能
2018/06/20 Python
python实现QQ邮箱/163邮箱的邮件发送
2019/01/22 Python
dataframe 按条件替换某一列中的值方法
2019/01/29 Python
PyQt5 QTableView设置某一列不可编辑的方法
2019/06/25 Python
Python使用微信itchat接口实现查看自己微信的信息功能详解
2019/08/22 Python
python生成任意频率正弦波方式
2020/02/25 Python
自定义实现 PyQt5 下拉复选框 ComboCheckBox的完整代码
2020/03/30 Python
python 动态渲染 mysql 配置文件的示例
2020/11/20 Python
详解HTML5常用的语义化标签
2019/09/27 HTML / CSS
同学聚会策划方案
2014/06/06 职场文书
贫民窟的百万富翁观后感
2015/06/09 职场文书
彻底理解golang中什么是nil
2021/04/29 Golang