1.1获取时间的三种定义方式
<script>
// var obj = new Object();
// Date 是一个构造函数
var date = new Date();
console.log(date);//将会出现当天的时间点
var date = new Date(2020, 3, 18);//打印指定日期的时间
console.log(date);//Sat Apr 18 2020 00:00:00 GMT+0800 (中国标准时间)
var date = new Date("2020-03-18 10:12"); //打印指定日期的时间
console.log(date);//Wed Mar 18 2020 10:12:00 GMT+0800 (中国标准时间)
</script>
1.2 Date对象上的年,月,日,周
<script>
var date = new Date();
// 获取到当前的年份
console.log(date.getFullYear())
// 获取当前的月份。 获取的值从0开始
console.log(date.getMonth() + 1)
// 获取到日
console.log(date.getDate());
// 获取到星期几
console.log(date.getDay())
// 将咱们今天的日期输出出来 2020年3月18日星期三
var year = date.getFullYear();
var month = date.getMonth()+1;
var dates = date.getDate();
var arr = ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六']
var day = arr[date.getDay()];
console.log("今天日期为", year + "年" + month + "月" + dates + "号" + day);
</script>
1.3 Date对象上的小时,分钟,秒
<script>
// var date = new Date();
// // console.log(date)
// // 小时
// console.log(date.getHours())
// // 分钟
// console.log(date.getMinutes())
// // 秒
// console.log(date.getSeconds())
// 10:24:02 8:5:3 => 08:05:03
function getTimer() {
var date = new Date();
var hours = date.getHours();
var minutes = date.getMinutes();
var seconds = date.getSeconds();
hours = hours < 10 ? '0' + hours: hours
minutes = minutes < 10 ? '0' + minutes : minutes
seconds = seconds < 10 ? '0' + seconds : seconds
return hours + ":" + minutes + ":" + seconds
// if(hours < 10) {
// hours = '0' + hours
// }
// if (minutes < 10) {
// minutes = '0' + minutes
// }
// if (seconds < 10) {
// seconds = '0' + seconds
// }
}
console.log(getTimer())
</script>
1.4 Date 获取时间戳
let time1 = Date.parse(new Date()); //1603009257000,精确到秒
let time2 = new Date().getTime(); //1603009495724,精确到毫秒
let time3 = new Date().valueOf(); //1603009495724.精确到毫秒
let time4 = Date.now(); //1603009495724,精确到毫秒,实际上是new Date().getTime()
if (!Date.now) {
Date.now = function now() {
return new Date().getTime();
};
}
console.log(time1);
console.log(time2);
console.log(time3);
console.log(time4);
Date.parse() 方法解析一个表示某个日期的字符串,并返回从1970-1-1 00:00:00 UTC 到该日期对象(该日期对象的UTC时间)的毫秒数,如果该字符串无法识别,或者一些情况下,包含了不合法的日期数值(如:2015-02-31),则返回值为NaN。
不推荐在ES5之前使用Date.parse方法,因为字符串的解析完全取决于实现。直到至今,不同宿主在如何解析日期字符串上仍存在许多差异,因此最好还是手动解析日期字符串(在需要适应不同格式时库能起到很大帮助