Date 对象用于处理日期与时间。
创建 Date 对象: new Date()
以下四种方法同样可以创建 Date 对象:
var d = new Date();
var d = new Date(milliseconds);
var d = new Date(dateString);
var d = new Date(year, month, day, hours, minutes, seconds, milliseconds);
Date 对象属性
属性 | 描述 |
---|---|
constructor | 返回对创建此对象的 Date 函数的引用。 |
prototype | 使您有能力向对象添加属性和方法。 |
Date 对象方法
方法 | 描述 |
---|---|
getDate() | 从 Date 对象返回一个月中的某一天 (1 ~ 31)。 |
getDay() | 从 Date 对象返回一周中的某一天 (0 ~ 6)。 |
getFullYear() | 从 Date 对象以四位数字返回年份。 |
getHours() | 返回 Date 对象的小时 (0 ~ 23)。 |
getMilliseconds() | 返回 Date 对象的毫秒(0 ~ 999)。 |
getMinutes() | 返回 Date 对象的分钟 (0 ~ 59)。 |
getMonth() | 从 Date 对象返回月份 (0 ~ 11)。 |
getSeconds() | 返回 Date 对象的秒数 (0 ~ 59)。 |
getTime() | 返回 1970 年 1 月 1 日至今的毫秒数。 |
getTimezoneOffset() | 返回本地时间与格林威治标准时间 (GMT) 的分钟差。 |
getUTCDate() | 根据世界时从 Date 对象返回月中的一天 (1 ~ 31)。 |
getUTCDay() | 根据世界时从 Date 对象返回周中的一天 (0 ~ 6)。 |
getUTCFullYear() | 根据世界时从 Date 对象返回四位数的年份。 |
getUTCHours() | 根据世界时返回 Date 对象的小时 (0 ~ 23)。 |
getUTCMilliseconds() | 根据世界时返回 Date 对象的毫秒(0 ~ 999)。 |
getUTCMinutes() | 根据世界时返回 Date 对象的分钟 (0 ~ 59)。 |
getUTCMonth() | 根据世界时从 Date 对象返回月份 (0 ~ 11)。 |
getUTCSeconds() | 根据世界时返回 Date 对象的秒钟 (0 ~ 59)。 |
getYear() | 已废弃。 请使用 getFullYear() 方法代替。 |
parse() | 返回1970年1月1日午夜到指定日期(字符串)的毫秒数。 |
setDate() | 设置 Date 对象中月的某一天 (1 ~ 31)。 |
setFullYear() | 设置 Date 对象中的年份(四位数字)。 |
setHours() | 设置 Date 对象中的小时 (0 ~ 23)。 |
setMilliseconds() | 设置 Date 对象中的毫秒 (0 ~ 999)。 |
setMinutes() | 设置 Date 对象中的分钟 (0 ~ 59)。 |
setMonth() | 设置 Date 对象中月份 (0 ~ 11)。 |
setSeconds() | 设置 Date 对象中的秒钟 (0 ~ 59)。 |
setTime() | setTime() 方法以毫秒设置 Date 对象。 |
setUTCDate() | 根据世界时设置 Date 对象中月份的一天 (1 ~ 31)。 |
setUTCFullYear() | 根据世界时设置 Date 对象中的年份(四位数字)。 |
setUTCHours() | 根据世界时设置 Date 对象中的小时 (0 ~ 23)。 |
setUTCMilliseconds() | 根据世界时设置 Date 对象中的毫秒 (0 ~ 999)。 |
setUTCMinutes() | 根据世界时设置 Date 对象中的分钟 (0 ~ 59)。 |
setUTCMonth() | 根据世界时设置 Date 对象中的月份 (0 ~ 11)。 |
setUTCSeconds() | setUTCSeconds() 方法用于根据世界时 (UTC) 设置指定时间的秒字段。 |
setYear() | 已废弃。请使用 setFullYear() 方法代替。 |
toDateString() | 把 Date 对象的日期部分转换为字符串。 |
toGMTString() | 已废弃。请使用 toUTCString() 方法代替。 |
toISOString() | 使用 ISO 标准返回字符串的日期格式。 |
toJSON() | 以 JSON 数据格式返回日期字符串。 |
toLocaleDateString() | 根据本地时间格式,把 Date 对象的日期部分转换为字符串。 |
toLocaleTimeString() | 根据本地时间格式,把 Date 对象的时间部分转换为字符串。 |
toLocaleString() | 根据本地时间格式,把 Date 对象转换为字符串。 |
toString() | 把 Date 对象转换为字符串。 |
toTimeString() | 把 Date 对象的时间部分转换为字符串。 |
toUTCString() | 根据世界时,把 Date 对象转换为字符串。 实例:var today = new Date(); |
var UTCstring = today.toUTCString(); | | UTC() | 根据世界时返回 1970 年 1 月 1 日 到指定日期的毫秒数。 | | valueOf() | 返回 Date 对象的原始值。 |
示例
示例一:获取当前时间
// Date
var d = new Date();
/* 年,月,日 */
var year = d.getFullYear();
var month = d.getMonth();
var date = d.getDate();
/* 时,分,秒,毫秒
1s =1000 millisecond
*/
var hour = d.getHours();
var minute = d.getMinutes()
var second = d.getSeconds();
var mills = d.getTime();
console.log(d);
console.log(year);
console.log(month+1) //月份是从0开始的,要加1
console.log(date)
console.log(hour)
console.log(minute)
console.log(second);
console.log(mills)
示例二:倒计时
<p id="app">
10:10:01
</p>
<script>
function handleTime(value) {
if (value < 10) {
return "0" + value;
}
return "" + value;
}
function showTime() {
var app = document.getElementById("app")
var endTime = "2020-12-01 16:50:00";
/* 1.获取结束时间的毫秒 */;
endTime = new Date(endTime).getTime();
/* 2.获取当前时间的毫秒 */
var nowTime = new Date().getTime();
/* 3.获取他们之间的差 */
var gapTime = endTime - nowTime;
/* 4.将他们的差转换为时分秒 */
var seconds = Math.floor(gapTime / 1000);
var hours = handleTime(Math.floor(seconds / 3600));
seconds = seconds % 3600;
var minutes = handleTime(Math.floor(seconds / 60));
seconds = handleTime(seconds % 60);
var sum = hours + ":" + minutes + ":" + seconds;
app.innerHTML = sum;
}
showTime();
setInterval(function(){
showTime();
},1000)
</script>
示例二:动态时钟
<div id="app">
<img src="images/0.png" alt="">
<img src="images/0.png" alt="">
<span>:</span>
<img src="images/0.png" alt="">
<img src="images/0.png" alt="">
<span>:</span>
<img src="images/0.png" alt="">
<img src="images/0.png" alt="">
</div>
<script>
function handleTime(value) {
if (value < 10) {
return "0" + value;
}
return "" + value;
}
function showTime() {
var imgs = document.querySelectorAll("#app img")
var d = new Date();
var hours = handleTime(d.getHours());
var minutes = handleTime(d.getMinutes());
var seconds = handleTime(d.getSeconds());
var sum = hours + minutes + seconds;
for (var i = 0; i < imgs.length; i++) {
// imgs[i].src = "images/" + sum[i] + ".png";
imgs[i].src = `images/${sum[i]}.png`;
}
setTimeout(function(){
showTime()
},1000)
}
showTime()
</script>