打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
JavaScript 学习-20.Date 日期对象

前言

JavaScript Date日期对象用于处理日期和时间。

创建日期

有四种方式初始化日期

new Date() // 当前日期和时间        
new Date(milliseconds) //返回从 1970 年 1 月 1 日至今的毫秒数
new Date(dateString)
new Date(year, month, day, hours, minutes, seconds, milliseconds)

实例化一个日期

var a = new Date();
console.log(a); // Mon May 23 2022 15:31:52 GMT+0800 (中国标准时间)
var b = new Date("May 23, 2021 10:13:00");
console.log(b) // Sun May 23 2021 10:13:00 GMT+0800 (中国标准时间)
var c = new Date(22, 5, 23);
console.log(c) // Fri Jun 23 1922 00:00:00 GMT+0800 (中国标准时间)
var d = new Date(2022, 5, 23);
console.log(d) // Thu Jun 23 2022 00:00:00 GMT+0800 (中国标准时间)

设置日期

日期对象设置一个特定的日期 (2022 年5 月 23 日)

var a = new Date();
a.setFullYear(2022, 5, 23);
console.log(a); // Thu Jun 23 2022 15:57:40 GMT+0800 (中国标准时间)

设置一个特定的时间(10点30分22秒)

var a = new Date();
a.setFullYear(2022, 5, 23); // 年月日
console.log(a); // Thu Jun 23 2022 15:57:40 GMT+0800 (中国标准时间)
a.setHours(10, 30, 22); // 时分秒
console.log(a) // Thu Jun 23 2022 10:30:22 GMT+0800 (中国标准时间)

设置日期的一些方法

方法参数说明
setFullYear()(year,month,date)设置 Date 对象中的年份(四位数字)。
setHours()(hoursr, min, sec, ms)设置 Date 对象中的小时 (0 ~ 23)。
setYear()
已废弃。请使用 setFullYear() 方法代替。
setMonth()(month, date)设置 Date 对象中月份 (0 ~ 11)。
setDate()(data)设置 Date 对象中月的某一天 (1 ~ 31)。
setMinutes()(min,sec, ms )设置 Date 对象中的分钟 (0 ~ 59)。
setSeconds()(sec, ms )设置 Date 对象中的秒钟 (0 ~ 59)。
setMilliseconds()( ms )设置 Date 对象中的毫秒 (0 ~ 999)。
setTime()timesetTime() 方法以毫秒设置 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) 设置指定时间的秒字段。

获取日期

获取日期的一些方法

方法说明
getDate()从 Date 对象返回一个月中的某一天 (1 ~ 31)。
getDay()从 Date 对象返回一周中的某一天 (0 ~ 6)。  星期天为 0, 星期一为 1, 以此类推
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() 方法代替。

获取当前日期的年月日时分秒

var a = new Date(); // 当前时间2022-5-23 16:25:58:968 星期一
year = a.getFullYear(); // 2022
month = a.getMonth(); // 4
data = a.getDate(); // 23
hour = a.getHours(); // 16
minute = a.getMinutes(); // 25
second = a.getSeconds(); // 58
ms = a.getMilliseconds(); // 968
day = a.getDay(); // 1

需要注意的地方有2个

  • getMonth() 获取月份是从0开始,1月是0,2月是1,以此类推

  • getDay() 获取星期几,星期天为 0, 星期一为 1, 以此类推

unix时间戳转换

getTime()获取当前时间的unix时间戳

var a = new Date();
time = a.getTime();
console.log(time); // 1653294924546 (毫秒)

setTime()设置unix时间戳格式的时间

var a = new Date();
a.setTime(1653294924546);
console.log(a); // Mon May 23 2022 16:35:24 GMT+0800 (中国标准时间)
`

日期计算

日期对象设置为 3 天后的日期

var current = new Date();
current.setDate(current.getDate()+3); // 当前时间+3天

当前日期往前5天

var current = new Date();
current.setDate(current.getDate()-5); // 当前时间-5天

当前时间往后加一个小时

var current = new Date();
current.setHours(current.getHours()+1); // 当前时间+1小时

注意: 如果增加天数会改变月份或者年份,那么日期对象会自动完成这种转换。

日期比较

日期对象也可用于比较两个日期。
下面的代码将当前日期与 2020 年 1 月 5 日做了比较:

var x = new Date();
x.setFullYear(2020, 0, 5);
var today = new Date();
if (today > x){
console.log("Today is after 2022.1.5");
}
else{
console.log("Today is before 2022.1.5");
}
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
js对象--Date时间对象
JavaScript日期操作方法详解
JavaScript Date(日期)对象
JavaScript 内置对象(二):Date 对象(构造函数、属性和方法) - 织网e站...
JS基础-内置对象【字符串+Date+Math】
js获取当前时间是本月的第几周
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服