- Date()对象:封装一个1970年元旦至今的毫秒数(从1970年1月1日0点0分0秒到当前时间的毫秒差),提供了对时间操作的方法
- get方法用来获得分量的值
getFullYear()
- 获取表示年份的数字,如2020
getMonth()
- 获取月份,范围0~11(0表示一月,1表示二月,以此类推)
getDate()
- 获取月份中的某一天,范围1~31
getDay()
- 获取星期,范围0~6(0表示星期一,1表示星期二,以此类推)
getHours()
- 获取小时数,返回0~23
getMinutes()
- 获取分钟数,范围0~59
getSeconds()
- 获取秒数,范围0~59
getMilliseconds()
- 获取毫秒数,范围0~999
getTime()
- 获取从1970-01-01 00:00:00 距离Date对象所代表时间的毫秒数
- set方法用来设置分量的值
setFullYear(value)
- 设置年份
setMonth(value)
- 设置月份
setDate(value)
- 设置月份中的某一天
setHours(value)
- 设置小时数
setMinutes(value)
- 设置分钟数
setSeconds(value)
- 设置秒数
setMilliseconds(value)
- 设置毫秒数
setTime(value)
- 通过从1970-01-01 00:00:00 计时的毫秒数来设置时间
- 日期转字符串
var date = new Date();
date.toString()
- GMT格式显示
date.toLocaleString()
- 操作系统当地时间格式,包含时间和日期
date.toLocaleDateString()
- 以操作系统当地时间格式,仅包含日期
date.toLocaleTimeString()
- 以操作系统当地时间格式,仅包含时间
- Date计算
- 两日期对象可直接相减,结果是毫秒差!
- 对每个分量做加减:3步: get分量值,做加减,set回去
- 一步概括:date.setXXX(date.getXXX()+/-n);
// 当前系统时间
var date = new Date();
// 2012年10月13日12时26分35秒
var date = new Date(2012, 10, 13, 12, 26, 35);
// 2012年10月有多少天
var max = new Date(2012, 10, 0).getDate();
// 获取当前月份
var nowMonth = new Date().getMonth()+ 1;
// 将毫秒数转化为时间
var date = new Date(1499996760000);
var dateTime = date.toLocaleString();
// 1970年1月1日午夜以来的毫秒数
new Date().getTime(); // 提倡使用的
new Date().valueOf();
Date.now(); // 直接使用的
+new Date(); // 相当于隐式转换,将该元素转换成Number类型,如果转换失败,那么将得到 NaN
new Date()* 1; // +new Date() 将会调用 Date.prototype 上的 valueOf() 方法,根据MDN,Date.prototype.value方法等同于Date.prototype.getTime()
// 实时时间
setInterval(
_=> {
var date = new Date();
var formate = (date=> {
var week = ['日', '一', '二', '三', '四', '五', '六'];
return date.getFullYear()+ '年'+
(date.getMonth()+ 1)+ '月'+
date.getDate()+ '日'+' ' +
'星期'+ week[date.getDay()]+ ' '+
date.toLocaleTimeString();
})(date);
console.log(formate);
},1000);