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 相关文章推荐
capacityFixed 基于jquery的类似于新浪微博新消息提示的定位框
May 24 Javascript
Javascript Throttle &amp; Debounce应用介绍
Mar 19 Javascript
Extjs4.0设置Ext.data.Store传参的请求方式(默认为GET)
Apr 02 Javascript
jquery放大镜效果超漂亮噢
Nov 15 Javascript
IE浏览器中图片onload事件无效的解决方法
Apr 29 Javascript
基于jquery步骤进度条源码分享
Nov 12 Javascript
javascript实现很浪漫的气泡冒出特效
Sep 05 Javascript
jQuery绑定自定义事件的魔法升级版
Jun 30 Javascript
jQuery Validate表单验证插件实现代码
Jun 08 jQuery
vue基于mint-ui的城市选择3级联动的示例
Oct 25 Javascript
Vue.js在数组中插入重复数据的实现代码
Nov 17 Javascript
vue2.0中set添加属性后视图不能更新的解决办法
Feb 22 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 adodb分页实现代码
2009/03/19 PHP
PHP 一个随机字符串生成代码
2010/05/26 PHP
PHP中对缓冲区的控制实现代码
2013/09/29 PHP
PHP实现基于mysqli的Model基类完整实例
2016/04/08 PHP
PHP使用Redis长连接的方法详解
2018/02/12 PHP
javascript中parentNode,childNodes,children的应用详解
2013/12/17 Javascript
文本域中换行符的替换示例
2014/03/04 Javascript
JQUERY简单按钮轮换选中效果实现方法
2015/05/07 Javascript
理解javascript函数式编程中的闭包(closure)
2016/03/08 Javascript
Bootstrap每天必学之模态框(Modal)插件
2016/04/26 Javascript
js操作XML文件的实现方法兼容IE与FireFox
2016/06/25 Javascript
文本框只能输入数字的js代码(含小数点)
2016/07/10 Javascript
Bootstrap table使用方法详细介绍
2016/12/09 Javascript
JavaScript实现公历转农历功能示例
2017/02/13 Javascript
node.js 用socket实现聊天的示例代码
2017/10/17 Javascript
Node.js 使用AngularJS的方法示例
2018/05/11 Javascript
React中使用async validator进行表单验证的实例代码
2018/08/17 Javascript
基于ajax实现上传图片代码示例解析
2020/12/03 Javascript
原生js实现九宫格拖拽换位
2021/01/26 Javascript
[10:24]郎朗助力完美“圣”典,天籁交织奏响序曲
2016/12/18 DOTA
MySQL最常见的操作语句小结
2015/05/07 Python
python探索之BaseHTTPServer-实现Web服务器介绍
2017/10/28 Python
Python图像处理之识别图像中的文字(实例讲解)
2018/05/10 Python
Python基于matplotlib画箱体图检验异常值操作示例【附xls数据文件下载】
2019/01/07 Python
详解python中@的用法
2019/03/27 Python
pygame实现俄罗斯方块游戏(基础篇1)
2019/10/29 Python
Python多线程通信queue队列用法实例分析
2020/03/24 Python
基于python实现复制文件并重命名
2020/09/16 Python
Kneipp克奈圃美国官网:德国百年精油配方的传承
2018/02/07 全球购物
感恩小明星事迹材料
2014/05/23 职场文书
中学学校门卫岗位职责
2014/08/15 职场文书
年度考核表个人总结
2015/03/06 职场文书
立案决定书范文
2015/06/24 职场文书
2016年乡镇七一建党节活动总结
2016/04/05 职场文书
python使用openpyxl库读写Excel表格的方法(增删改查操作)
2021/05/02 Python
web前端之css水平居中代码解析
2021/05/20 HTML / CSS