日期对象
Date日期对象是一个构造函数,跟Math数学对象不一样,不可以直接使用,必须使用new来调用创建我们的日期对象。
1.Date()日期对象的使用
var date = new Date(); //括号里面不含参数,返回的是系统当前的时间
console.log(date);
2.日期格式化
因为我们直接使用new Date()返回的系统时间是不符合人们的书写习惯的,所以我们需要使用一些方法把日期格式化。(最下面会有使用示例)
方法名 | 说明 |
---|---|
getFullYear() | 获取当前系统时间的年份 |
getMonth() | 获取当前系统时间的月份(0-11),注意月份需要加1 |
getDate() | 获取当前系统时间的日期 |
getDay() | 获取星期几(周日0-周六6) |
getHours() | 获取当前小时 |
getMinutes() | 获取当前分钟 |
getSeconds() | 获取当前秒钟 |
示例 : 写一个2022 年 11月16日 星期三
var date = new Date();
var year = date.getFullYear();
var month = date.getMonth() + 1;
var dates = date.getDate();
var day = date.getDay();
var arr = ['星期日','星期一','星期二','星期三','星期四','星期五','星期六'];
console.log('今天是:' + year + '年' + month + '月' + dates + '日' + arr[day]);
3.获取日期的总的毫秒的3种方式
(1)通过valueOf() 或者getTime()
var date = new Date();
console.log(date.valueOf());
console.log(date.getTime());
(2)通过在new前面加上加号的方式
var date = +new Date();
console.log(date)
(3)通过H5新增的方式
console.log(Date.now())
4.封装一个倒计时效果的函数
function countDown(time) {
var nowTime = +new Date();//返回的是当前时间的总的毫秒数
var inputTime = +new Date(time);//返回的是用户输入时间的总的毫秒数
var times = (inputTime - nowTime) / 1000;//times是剩余时间的总的毫秒数
var d = parseInt((times / 60 / 60 / 24));//天
d = d > 10 ? d : '0' + d;
var h = parseInt((times / 60 / 60 % 24));//时
h = h > 10 ? h : '0' + h;
var m = parseInt((times / 60 % 60));//分钟
m = m > 10 ? m : '0' + m;
var s = parseInt((times % 60));//秒
s = s > 10 ? s : '0' + s;
return d + '天' + h + '时' + m + '分' + s + '秒';
}
console.log(countDown('2022-11-16 19:53:44'));