同事问在JS中,如何将日期字符串(如:2014-05-04)转换成Javascript中日期对象Date,上网查了资料,简单做一个小结:
创建一个日期对象:var objDate=new Date([arguments list]);
参数形式有以下5种:
new 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月)
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月),这样再利用正则表达式就很方便地能够转换字符串日期了。
实例:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/> <title>JS日期测试</title> </head> <body> <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 window.onload=function(){ var dependedVal="2012-1-5"; //根据日期字符串转换成日期 var regEx = new RegExp("\\-","gi"); dependedVal=dependedVal.replace(regEx,"/"); //dependedVal=dependedVal.replace("\\-","/");//这样不行 alert(dependedVal) //法一:parse方式,需要2012/1/5这种格式! var milliseconds=Date.parse(dependedVal); alert(milliseconds) var dependedDate=new Date(); dependedDate.setTime(milliseconds); alert("parse方式:" + dependedDate); var now = new Date(); alert("相隔年数:"+(now.getFullYear() - dependedDate.getFullYear())); //法二:new方式 var dependedDate2 = new Date(dependedVal); alert("new 方式:" + dependedDate2); var now2 = new Date(); alert("相隔年数:"+(now2.getFullYear() - dependedDate2.getFullYear())); }; // --> </script> </body> </html>
打开页面运行结果:
依次弹出如下信息:
2012/1/5 1325692800000 parse方式:Thu Jan 5 00:00:00 UTC+0800 2012 相隔年数:2 new方式:Thu Jan 5 00:00:00 UTC+0800 2012 相隔年数:2
页面效果:
相关推荐
js string转date,js字符串转换成日期,此代码支持将datetime(年月日小时分秒格式)转换为js的Date类型,程序已调试并支持在HTML中运行、代码请见附件。
最近遇到一个问题,就是获取表单中的日期往后台通过json方式传的时候,遇到Date.parse(str)函数在ff下报错: NAN 找了些资料,发现是由于Date.parse()函数对日期格式有要求:详细参考 Date.parse函数 对于js操作日期: ...
js date转String 日期字符串转换
javascript转换日期字符串为Date日期对象的方法.docx
1、根据后端返回来的时间戳字符串转成前端显示的日期格式; 2、日期之间的连接符可以自动设置;例如(2022/09/02或者2022-09-02等) 3、包含两个插件,可以直接使用。一个是转成到具体的时间秒,一个是转成到天
您可能感兴趣的文章:sql语句中如何将datetime格式的日期转换为yy-mm-dd格式将WMI中的DateTime类型转换成VBS时间的函数代码LINQ字符串向datetime 转换时失败的处理方法Sql中将datetime转换成字符串的
js中日期和字符串的互转很有帮助啊发的说法撒旦js中日期和字符串的互转很有帮助啊发的说法撒旦js中日期和字符串的互转很有帮助啊发的说法撒旦js中日期和字符串的互转很有帮助啊发的说法撒旦
判断所传入的字符串是不是时间类型,日期类型,如果是日期类型可以转换成Date类型
主要介绍了JS简单实现String转Date的方法,涉及JavaScript字符串与日期相互转换的相关技巧,需要的朋友可以参考下
本文实例讲述了javascript转换日期字符串为Date日期对象的方法。分享给大家供大家参考。具体如下: 这里实现把一个日期字符串如“2014-4-28 12:31:45”转换为Date对象: 方法一: 代码如下:var strArray=str.split...
js中date类型时间与字符串类型函数转换工具包,可以作为前端util包
js处理java后台传过来的date对象并转换成指定格式的字符串,亲测可用
将****-**-** *:**:**格式的时间转换成数字,由此可实现对时间先后发生顺序的判断等诸多操作。本例只以年月日小时这一部分做了处理,若要细化到分秒,思路皆是如此。
字符串转日期、日期转字符串 // 2014-02-25 /** * 字符串转时间(yyyy-MM-dd HH:mm:ss) * result (分钟) */ stringToDate : function(fDate){ var fullDate = fDate.split("-"); return new Date...
JS常用工具函数(压缩包中含有MD文件可自行查看)--包含:通用格式化时间、字符串验证-验证邮箱、手机号、电话号码、url地址、严格校验身份证号码,判断数据类型-是否是字符串、数字、Boolean、函数、对象、数组...
本文实例讲述了js实现字符串转日期格式的方法。分享给大家供大家参考。具体分析如下: 大家都知道JS是根据结果来确定数据类型的。 当然我们也是可以转化的,下面我就介绍两种关于JS字符串类型转换成日期类型的方法,...
将查询字符串转换为快速/连接应用程序的日期。 安装 npm install --save express-query-date 入门 该模块将递归地尝试解析req.query每个属性。 在bodyParser之后bodyParser加载它: var dateParser = require ( ...
给定一个时间字符串 var time="2017-02-27 16:42:53" js有三种转换为时间戳的方法: 1、var timestamp = Date.parse(time) 2、var timestamp = time.getTime() 3、var timestamp = time.valueOf() 第一种方法...