获取当前日期
function getNowDate() {
var date = new Date();
var year = date.getFullYear();
var month = date.getMonth() + 1;
var day = date.getDate();
var arr = ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六'];
var week = date.getDay();
return year + '/' + month + '/' + day + '\n' + arr[week];
}
获取当前时间
function getNowTime() {
var time = new Date();
var h = time.getHours();
h = h < 10 ? '0' + h : h;
var m = time.getMinutes();
m = m < 10 ? '0' + m : m;
var s = time.getSeconds();
s= s < 10 ? '0' + s : s;
return h + ':' + m + ':' + s
}
获取毫秒数(距1970年1月1日)
// 1.通过valueof()、getTime()
var date1 = new Date();
var now = date1.getTime();
console.log(date1.getTime());
console.log(date1.valueOf());
//2.简单的写法(最常用)做了+运算,触发对象调用了valueof()方法
var date2 = +new Date();
// 3.h5新增
console.log(Date.now());
+new Date()为什么可以获取当前的毫秒数?
对new Date()这个对象进行**+**运算,触发对象执行了valueOf()这个方法
举例
var date = new Date();
var date1 = date.getTime();
console.log(date1 === date.valueOf());//true
console.log(date1 === +date);//true
当前时间距离目标时间还有多长时间
//通过时间戳来计算
function countDown(time) {
var now = +new Date();
var end = +new Date(time);
var result = (end - now) / 1000;
var day = parseInt(result / 60 / 60 / 24);
day = day > 10 ? day : '0' + day;
var h = parseInt(result / 60 / 60 % 24);
h = h > 10 ? h : '0' + h;
var m = parseInt(result / 60 % 60);
m = m > 10 ? m : '0' + m;
var s = parseInt(result % 60);
s = s > 10 ? s : '0' + s;
return day + '天' + h + '时' + m + '分' + s + '秒';
}
countDown('2020-1-16')