香港服务器
10.02.2024
获取JavaScript时间戳有哪5种方法?

在日常的Web开发中,处理日期和时间是不可避免的任务。JavaScript作为Web开发的核心语言之一,提供了一系列的方法来处理时间,尤其是时间戳。本文将介绍获取时间戳方法和转换JavaScript时间戳的多种方法,并分享一些实用技巧。
获取时间戳方法
以下是JavaScript中获取当前时间戳的五种方法:
使用Date.now()方法
这是获取当前时间戳最直接的方法。它返回调用时的毫秒表示。
console.log(Date.now()); // 输出例: 1642471441587
通过Date.parse()转换时间字符串
该方法解析一个表示日期的字符串,并返回那个日期的时间戳。但需要注意的是,它会将毫秒值转换为000。
console.log(Date.parse(new Date())); // 输出例: 1642471535000
console.log(Date.parse("2022/1/18 10:05")); // 输出例: 1642471500000
valueOf()方法
此方法返回Date对象的原始值,即时间戳。
console.log((new Date()).valueOf()); // 输出例: 1642471624512
getTime()方法
这个方法返回日期对象自1970年1月1日 00:00:00 UTC以来经过的毫秒数。
console.log(new Date().getTime()); // 输出例: 1642471711588
转换为Number类型
通过对Date对象使用Number构造函数,可以得到时间戳。
console.log(Number(new Date())); // 输出例: 1642471746435
时间戳转换为日期
获取了时间戳之后,我们经常需要将其转换成可读的日期格式。下面是两种常见的转换方法:
转换为本地时间字符串
利用toLocaleString()方法可以获得本地时间格式的字符串。
function getLocalTime(n) {
return new Date(parseInt(n)).toLocaleString().replace(/:\d{1,2}$/, ' ');
}
console.log(getLocalTime(1642471746435)); // 输出例: '2022/1/18 上午10:09'
格式化为自定义格式
可以通过拼接日期组件来创建自定义格式的日期字符串。
function customFormatDate(timestamp) {
let date = new Date(timestamp),
year = date.getFullYear(),
month = date.getMonth() + 1,
day = date.getDate(),
hour = date.getHours(),
minute = date.getMinutes(),
second = date.getSeconds();
return `${year}-${month}-${day} ${hour}:${minute}:${second}`;
}
console.log(customFormatDate(1642471746435)); // 输出例: '2022-1-18 10:09:06'