JS有关日期的操作

来源:互联网 发布:免费一级域名注册 编辑:程序博客网 时间:2024/05/21 11:08

得到时间方法: 

js中的日期时间函数具体使用注意事项: 月份获取的时候会-1. 例如当前是12月份,获取的数字就是11

var date = new Date();

var date2=new Date("2016/9/23 10:10:10"); 或者 new Date("2016-9-23 10:10:10");
date.getYear();        //获取年份(2位)
date.getFullYear();    //获取完整的年份(4位,1970-)
date.getMonth();       //获取月份(0-11,0代表1月,所以在显示当前时间的时候需要date.getMonth() + 1)
date.getDate();        //获取日(1-31)
date.getDay();         //获取星期?(0-6,0代表星期天)
date.getTime();        //获取时间(从1970.1.1开始的毫秒数)
date.getHours();       //获取小时数(0-23)
date.getMinutes();     //获取分钟数(0-59)
date.getSeconds();     //获取秒数(0-59)
date.getMilliseconds();    //获取毫秒数(0-999)
date.toLocaleString();        //获取日期与时间

设置时间方法: 

       setDate() 改变Date对象的日期 
  setHours() 改变小时数 
  setMinutes() 改变分钟数 
  setMonth() 改变月份 
  setSeconds() 改变秒数 
  setTime() 改变完整的时间 
  setYear() 改变年份

转换时间方法:

toGMTString() ,(toLocaleDateString和toLocaleTimeString) 把Date对象的日期(一个数值)转变成一个GMT时间字符串,返回类似下面的值:Weds,15 June l997 14:02:02 GMT(精确的格式依赖于计算机上所运行的操作系统而变) 。
toLocaleString() 把Date对象的日期(一个数值)转变成一个字符串,使用所在计算机上配置使用的特定日期格式 。
UTC() 使用Date UTC(年、月、日、时、分、秒),以自从1970年1月1日00:00:00(其中时、分、秒是可选的)以来的毫秒数的形式返回日期。

几个需要注意的地方:

最重要的一点就是考虑到多浏览器的兼容性。需要按如下格式获取日期比较好

var timestart = '2015-09-05'; var timeend = '2015-09-06';var time1 = (timestart+' 00:00:00').toString();var time2 = (timeend+' 23:59:59').toString();timestart = new Date(Date.parse(time1.replace(/-/g,"/"))).getTime();timeend = new Date(Date.parse(time2.replace(/-/g,"/"))).getTime();


几个关于时间的经典而且经常会用到的例子:

1、将2005-8-5转换成2005-08-05格式

<script language="javascript"> var strDate = '2005-8-5'; window.alert(strDate.replace(/\b(\w)\b/g, '0$1')); </script>

2、得到间隔天数

<script type="text/javascript"> alert("间隔天数为:"+(new Date('2005/8/15')-new Date('2003/9/18'))/1000/60/60/24+"天") ;</script>
3、得到今天的日期
<script language="javascript"> d = new Date(); alert(d.getFullYear()+"年"+(d.getMonth()+1)+"月"+d.getDate()+"日"); </script>

4、得到前N天或后N天的日期

方法一:

<script type="text/javascript"> function showdate(n) { var uom = new Date(new Date()-0+n*86400000); // -0是为了转换为数字类型,new Date()直接 “+” 会变成字符串拼接。uom = uom.getFullYear() + "-" + (uom.getMonth()+1) + "-" + uom.getDate(); return uom; }  window.alert("今天是:"+showdate(0)); window.alert("昨天是:"+showdate(-1)); window.alert("明天是:"+showdate(1)); window.alert("10天前是:"+showdate(-10)); window.alert("5天后是:"+showdate(5)); </script>
方法二:

<script type="text/javascript"> function showdate(n) { var uom = new Date(); uom.setDate(uom.getDate()+n); uom = uom.getFullYear() + "-" + (uom.getMonth()+1) + "-" + uom.getDate(); return uom; }  window.alert("今天是:"+showdate(0)); window.alert("昨天是:"+showdate(-1)); window.alert("明天是:"+showdate(1)); window.alert("10天前是:"+showdate(-10)); window.alert("5天后是:"+showdate(5)); </script>




0 0