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各浏览器中option元素的表现差异
Apr 07 Javascript
使用js检测浏览器的实现代码
May 14 Javascript
关于JavaScript的变量的数据类型的判断方法
Aug 14 Javascript
去除字符串左右两边的空格(实现代码)
May 12 Javascript
JS基于递归算法实现1,2,3,4,5,6,7,8,9倒序放入数组中的方法
Jan 03 Javascript
Vue数据驱动模拟实现1
Jan 11 Javascript
提高Web性能的前端优化技巧总结
Feb 27 Javascript
Vue 将后台传过来的带html字段的字符串转换为 HTML
Mar 29 Javascript
vue axios整合使用全攻略
May 24 Javascript
javascript实现的时间格式加8小时功能示例
Jun 13 Javascript
layui表格内容溢出的解决方法
Sep 06 Javascript
原生js 实现表单验证功能
Feb 08 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 实现多服务器共享 SESSION 数据
2009/08/15 PHP
PHP 身份验证方面的函数
2009/10/11 PHP
PHP 读取和修改大文件的某行内容的代码
2009/10/30 PHP
解析php mysql 事务处理回滚操作(附实例)
2013/08/05 PHP
限制ckeditor上传图片文件大小的方法
2013/11/15 PHP
PHP的Yii框架中移除组件所绑定的行为的方法
2016/03/18 PHP
php在windows环境下获得cpu内存实时使用率(推荐)
2018/02/08 PHP
PHP程序员学习使用Swoole的理由
2018/06/24 PHP
utf8的编码算法 转载
2006/12/27 Javascript
ExtJS 2.0实用简明教程 之ExtJS版的Hello
2009/04/29 Javascript
jquery.cvtooltip.js 基于jquery的气泡提示插件
2010/11/19 Javascript
由Javascript实现的页面日历
2011/11/04 Javascript
用JQuery在网页中实现分隔条功能的代码
2012/08/09 Javascript
JQuery实现简单的图片滑动切换特效
2015/11/22 Javascript
JS图片定时翻滚效果实现方法
2016/06/21 Javascript
Bootstrap select多选下拉框实现代码
2016/12/23 Javascript
详解JS中定时器setInterval和setTImeout的this指向问题
2017/01/06 Javascript
Bootstrap Table使用整理(一)
2017/06/09 Javascript
创建简单的node服务器实例(分享)
2017/06/23 Javascript
微信小程序从注册账号到上架(图文详解)
2019/07/17 Javascript
vuejs实现下拉框菜单选择
2020/10/23 Javascript
Python3读取UTF-8文件及统计文件行数的方法
2015/05/22 Python
详解Python中的from..import绝对导入语句
2016/06/21 Python
ubuntu系统下使用pm2设置nodejs开机自启动的方法
2018/05/12 NodeJs
python实现对任意大小图片均匀切割的示例
2018/12/05 Python
Python实现的排列组合、破解密码算法示例
2019/04/12 Python
python程序控制NAO机器人行走
2019/04/29 Python
python 杀死自身进程的实现方法
2019/07/01 Python
python selenium 执行完毕关闭chromedriver进程示例
2019/11/15 Python
纯css3制作网站后台管理面板
2014/12/30 HTML / CSS
西班牙英格列斯百货官网:El Corte Inglés
2016/09/25 全球购物
物流专业求职计划书
2014/01/10 职场文书
打架检讨书800字
2014/01/10 职场文书
护士毕业生自我鉴定
2014/02/08 职场文书
教职工代表大会主持词
2014/04/01 职场文书
建设工地安全标语
2014/06/07 职场文书