📅  最后修改于: 2023-12-03 15:16:08.830000             🧑  作者: Mango
JavaScript 提供了多种日期方法,可以用来获取、设置和格式化日期。
获取当前日期和时间,可以使用 Date()
构造函数,它返回一个 Date
类型的对象。例如:
var now = new Date();
console.log(now);
输出:
Wed Nov 11 2020 11:11:11 GMT+0800 (China Standard Time)
上面的输出中,日期和时间以字符串形式显示,格式为 星期 月 日 年 时:分:秒 时区
。
可以使用 toLocaleString()
方法将日期和时间转化为本地时间。例如:
var now = new Date();
console.log(now.toLocaleString());
输出:
2020/11/11 下午11:11:11
此时,日期和时间的格式根据系统的本地设置而定。
获取当前日期,可以使用 getFullYear()
、getMonth()
和 getDate()
方法。例如:
var now = new Date();
console.log(now.getFullYear() + '/' + (now.getMonth() + 1) + '/' + now.getDate());
输出:
2020/11/11
注意,getMonth()
返回的是月份的索引,从 0 开始计算。因此要加 1 才能得到实际的月份值。
获取当前时间,可以使用 getHours()
、getMinutes()
和 getSeconds()
方法。例如:
var now = new Date();
console.log(now.getHours() + ':' + now.getMinutes() + ':' + now.getSeconds());
输出:
23:11:11
设置日期和时间,可以使用 setFullYear()
、setMonth()
、setDate()
、setHours()
、setMinutes()
和 setSeconds()
方法。例如:
var now = new Date();
now.setFullYear(2021);
now.setMonth(0);
now.setDate(1);
console.log(now.toLocaleString());
输出:
2021/1/1 下午11:11:11
上面的代码将日期设置为 2021 年 1 月 1 日。
可以一次性设置年、月、日、时、分、秒等多种信息。例如:
var now = new Date();
now.setFullYear(2021, 0, 1);
now.setHours(0, 0, 0);
console.log(now.toLocaleString());
输出:
2021/1/1 上午12:00:00
上面的代码将日期设置为 2021 年 1 月 1 日 0 时 0 分 0 秒。
可以使用 getTime()
方法获取自 1970 年 1 月 1 日 0 时 0 分 0 秒以来的毫秒数。例如:
var now = new Date();
console.log(now.getTime());
输出:
1605087071111
可以使用 Date.parse()
方法将日期字符串转化为毫秒数。例如:
var dateStr = '2021/1/1 00:00:00';
var timestamp = Date.parse(dateStr);
console.log(timestamp);
输出:
1609420800000
可以使用 new Date(timestamp)
构造函数将毫秒数转化为日期对象。例如:
var timestamp = 1609420800000;
var dateObj = new Date(timestamp);
console.log(dateObj.toLocaleString());
输出:
2021/1/1 上午12:00:00
可以使用 getTimezoneOffset()
方法获取本地时区与 UTC 时区的时差,单位为分钟。例如:
var now = new Date();
console.log(now.getTimezoneOffset());
输出:
-480
上面的输出表示本地时区比 UTC 时区早 8 小时。
可以使用 toLocaleDateString()
和 toLocaleTimeString()
方法将日期和时间转化为本地格式化的字符串。例如:
var now = new Date('2021/1/1 00:00:00');
console.log(now.toLocaleDateString());
console.log(now.toLocaleTimeString());
输出:
2021/1/1
上午12:00:00
可以使用 toLocaleString()
方法将日期和时间一次性转化为本地格式化的字符串。例如:
var now = new Date('2021/1/1 00:00:00');
console.log(now.toLocaleString());
输出:
2021/1/1 上午12:00:00
上面的例子中,日期和时间的格式均受到系统的本地设置的影响。
JavaScript 提供了多种日期方法,可以用来获取、设置和格式化日期。开发者根据实际需要选择合适的方法即可。