(一)Date
获取系统当前的时间: var now=new Date();
now; //Tus Feb 21 2017 19:49:22 GMT+0800 (CST)
now.getFullYear(); //获取年份
now.getMonth(); //获取月份
now.getDate(); //获取多少日
now.getDay(); //获取周几,比如2,表示周二
now.getHours(); // 获取几时
now.getMinutes(); //获取几分
now.getSeconds(); //获取秒数
now.getMilliseconds(); // 875, 毫秒数
now.getTime(); //1435146562875, 以number形式表示的时间戳
注意,当前时间是浏览器从本机操作系统获取的时间,所以不一定准确,因为用户可以把当前时间设定为任何值。
创建一个指定时间和日期的对象:var d=new Date(2017,1,21,8,37,35,123);
d; //在这里,d显示的结果翻译为2017年的2月21日 8:37:35,周二
你可能观察到了一个非常非常坑爹的地方,就是JavaScript的月份范围用整数表示是0~11,0
表示一月,1
表示二月……,所以要表示6月,我们传入的是5
!这绝对是JavaScript的设计者当时脑抽了一下,但是现在要修复已经不可能了。
第二种创建一个指定日期和时间的方法是解析一个符合ISO 8601格式的字符串:
var d = Date.parse('2015-06-24T19:49:22.875+08:00');
d; // 1435146562875 但它返回的不是Date
对象,而是一个时间戳
var d=new Date(
1435146562875
);
d; //Wed Jun 24 2015 19:49:22 GMT+0800 (CST)
var d = new Date(1435146562875);
d.toLocaleString(); // '2015/6/24 下午7:49:22',本地时间(北京时区+8:00),显示的字符串与操作系统设定的格式有关
d.toUTCString(); // 'Wed, 24 Jun 2015 11:49:22 GMT',UTC时间,与本地时间相差8小时