首页 > 代码库 > js时间操作

js时间操作

var myDate = new Date();    

myDate.getYear();       //获取当前年份(2位)    

myDate.getFullYear();   //获取完整的年份(4位,1970-????)  

myDate.getMonth();      //获取当前月份(0-11,0代表1月)(要加1) 

myDate.getDate();       //获取当前日(1-31)    

myDate.getDay();        // 获取当前星期X(0-6,0代表星期天)    

myDate.getTime();       //获取当前时间(从1970.1.1开始的毫秒数)    

myDate.getHours();      //获取当前小时数(0-23)    

myDate.getMinutes();    // 获取当前分钟数(0-59)    

myDate.getSeconds();    //获取当前秒数(0-59)    

myDate.getMilliseconds();   //获取当前毫秒数(0-999)    

myDate.toLocaleDateString();    //获取当前日期    

var mytime=myDate.toLocaleTimeString();    //获取当前时间    

myDate.toLocaleString( );       //获取日期与时间 

 

设置时间的方法:

setYear()       //改变年份

转换时间的方法:

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

1、当前系统区域设置格式(toLocaleDateString和toLocaleTimeString)

例子:(new Date()).toLocaleDateString() + " " + (new Date()).toLocaleTimeString()
结果: 2008年1月29日 16:13:11

2.普通字符串(toDateString和toTimeString)

例子: (new Date()).toDateString() + " " + (new Date()).toTimeString()
结果:Tue Jan 29 2008 16:13:11 UTC+0800

3.格林威治标准时间(toGMTString)

例子: (new Date()).toGMTString()
结果:Tue, 29 Jan 2008 08:13:11 UTC

4.全球标准时间(toUTCString)

例子: (new Date()).toUTCString()
结果:Tue, 29 Jan 2008 08:13:11 UTC

5.Date对象字符串(toString)

例子: (new Date()).toString()
结果:Tue Jan 29 16:13:11 UTC+0800 2008

 

 

几个需要注意的地方:

1、得到日期和年和设置日期和年时间,其中很怪的问题就是不能对月份进行设置(比较的怪):

<script type="text/javascript" language="javascript">//d = new Date();alert(d.toLocaleString());

d.setDate(14);

alert(d.toLocaleString());

d.setYear(2007);

alert(d.toLocaleString());

</script>

2、获得年的时候最好用getFullYear()方法来做 3、由于针对月份,JS是从0开始的,因此需要对月份进
行操作时要加1 下面是几个关于时间的经典而且经常会用到的例子,对大家会有帮助的: 1、将2005-8
-5转换成2005-08-05格式 

<script type="text/javascript" language="javascript">

//

var strDate = ‘2005-8-5‘; 

 window.alert(strDate.replace(/\b(\w)\b/g, ‘0$1‘));  

</script>

2、得到间隔天数 <script type="text/javascript">//&amp;amp;lt;!--  alert("间隔天数为:"+(new Date(‘2005/8/15‘)-new Date(‘2003/9/18‘))/1000/60/60/24+"天")  //</script>

 

3、得到间隔时间 <script type="text/javascript">//var d1=new Date("2004/09/16 20:08:00");  var d2=new Date("2004/09/16 10:18:03");  var d3=d1-d2;  var h=Math.floor(d3/3600000);  var m=Math.floor((d3-h*3600000)/60000);  var s=(d3-h*3600000-m*60000)/1000;  alert("相差"+h+"小时"+m+"分"+s+"秒");  //</script>

4、得到今天的日期 <script type="text/javascript" language="javascript">//d = new Date();  alert(d.getFullYear()+"年"+(d.getMonth()+1)+"月"+d.getDate()+"日");  //</script>

6、得到前N天或后 N天的日期 方法1: <script type="text/javascript">//function showdate(n)  {  var uom = new Date(new Date()-0+n*86400000);  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>

方法 2: <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>

方法 3: <script type="text/javascript" language="Javascript">//Date.prototype.getDays=function(){  var _newDate=new Date();  _newDate.setMonth(_newDate.getMonth()+1);  _newDate.setDate(0);  $_days=_newDate.getDate();  delete _newDate;  return $_days;  }  function showdate(n)  {  var uom = new Date();  uom.setDate(uom.getDate()+n);  uom = uom.getFullYear() + "-" + (uom.getMonth()+1) + "-" + uom.getDate()+"\n星期"+(‘天一二
三四五六 ‘.charAt(uom.getDay()))+"\n本月有"+ uom.getDays()+"天";  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>