JavaScript时间函数和格式化时间戳实践

目录

1. 获取当前时间

2. 获取特定时间

3. 获取时间戳

4. 格式化时间戳为字符串

5. 计算时间差

6. 将时间字符串转化成时间戳

总结

Node.js进阶之使用 superagent 与 cheerio 模块详解,并实现简单的爬虫案例

Node.js开发进阶之JavaScript函数的命名方式和自执行匿名函数详解


图片

扫描二维码关注公众号,回复: 17010698 查看本文章

JavaScript中有许多用于处理时间和日期的内置函数和方法。这些函数和方法可以帮助我们获取当前时间、格式化时间戳、计算时间差等。本文将详细介绍JavaScript中常用的时间函数和如何格式化时间戳。

本篇原文:JavaScript时间函数和格式化时间戳实践

更多关于JavaScript相关的技术点,请关注下方公众号CTO Plus

图片

1. 获取当前时间

JavaScript提供了`Date`对象来表示时间和日期。可以使用`new Date()`来创建一个表示当前时间的`Date`对象。

let now = new Date(); //创建对象,返回当前时间戳

// 输出当前时间的日期和时间

console.log(now, typeof now); // 2023-06-23T14:26:35.445Z object

2. 获取特定时间

除了获取当前时间,我们还可以通过传递参数给`Date`对象来获取特定的时间。

let specificTime = new Date(2023, 6, 23, 12, 30, 0);

console.log(specificTime, typeof specificTime);//2023-07-23T04:30:00.000Z object

在上面的例子中,我们传递了年、月、日、小时、分钟和秒作为参数,以获取特定的时间。

3. 获取时间戳

时间戳是指从1970年1月1日午夜(格林威治时间)开始经过的毫秒数。可以使用`Date`对象的`getTime()`方法来获取当前时间的时间戳。获得时间戳可以使用Date.now()和date.getTime()两种方法。

使用Date.now() 获得当前时间戳,属于静态方法,无需创建对象

console.log(Date.now()); // 1687530990595

let timestamp = new Date().getTime();

// 输出当前时间的时间戳

console.log(timestamp, now.getTime(), typeof timestamp); // 1687530604090 1687530604072 number

4. 格式化时间戳为字符串

格式化时间戳是将时间戳转换为特定的时间格式。JavaScript中没有内置的格式化时间戳的函数,但可以使用一些方法来实现。

function formatTimestamp(timestamp) {
   
     let date = new Date(timestamp);  let year = date.getFullYear();  let month = date.getMonth() + 1;  let day = date.getDate();  let hours = date.getHours();  let minutes = date.getMinutes();  let seconds = date.getSeconds();    return `${year}-${addZero(month)}-${addZero(day)} ${addZero(hours)}:${addZero(minutes)}:${addZero(seconds)}`;}
function addZero(num) {
   
     return num < 10 ? `0${num}` : num;}
let formattedTime = formatTimestamp(timestamp);// 输出格式化后的时间字符串console.log(formattedTime); // //2023-06-23 22:31:51 string 

在上面的例子中,我们定义了一个`formatTimestamp()`函数,它接受一个时间戳作为参数,并返回格式化后的时间字符串。我们使用`Date`对象的方法获取年、月、日、小时、分钟和秒,并使用`addZero()`函数在数字小于10时添加前导零。

5. 计算时间差

JavaScript中可以使用`Date`对象的方法来计算时间差。例如,可以使用`getTime()`方法获取两个时间的时间戳,然后计算它们之间的差值。

let startTime = new Date(2023, 6, 23, 12, 0, 0);

let endTime = new Date(2023, 6, 23, 13, 30, 0);

let diff = endTime.getTime() - startTime.getTime();

//输出时间差的毫秒数

console.log(diff, typeof diff); //5400000 number

在上面的例子中,我们创建了两个`Date`对象来表示开始时间和结束时间,然后使用`getTime()`方法获取它们的时间戳,并计算它们之间的差值。

6. 将时间字符串转化成时间戳

Date.parse() 将时间字符串转化成时间戳

console.log(Date.parse("2023-06-23 22:31:51")); // 1687530711000,静态方法

总结

JavaScript提供了许多用于处理时间和日期的内置函数和方法。通过`Date`对象,我们可以获取当前时间、特定时间、时间戳,以及计算时间差。对于格式化时间戳,虽然JavaScript没有内置的函数,但可以使用自定义的方法来实现。在实际开发中,根据具体的需求选择合适的时间函数和方法来处理时间和日期。

大前端专栏
https://blog.csdn.net/zhouruifu2015/category_5734911

更多精彩,关注我公号,一起学习、成长

Node.js系列文章推荐阅读:

  • 开源项目 | JavaScript最热门的25个前端开发插件(库)总结

  • Node.js几个非常有用的全局对象、全局变量和全局函数详解

  • Node.js之heroku简化应用部署和管理的利器详细介绍和使用案例

  • Node.js进阶之使用 superagent 与 cheerio 模块详解,并实现简单的爬虫案例

  • Node.js开发进阶之JavaScript函数的命名方式和自执行匿名函数详解

大前端专栏
https://blog.csdn.net/zhouruifu2015/category_5734911https://blog.csdn.net/zhouruifu2015/category_5734911Node.js专栏

https://blog.csdn.net/zhouruifu2015/category_5728369.htmlhttps://blog.csdn.net/zhouruifu2015/category_5728369.html


更多资料 · 微信公众号搜索【CTO Plus】关注后,获取更多,我们一起学习交流。

关于公众号的描述访问如下链接


关于Articulate“做一个知识和技术的搬运工。做一个终身学习的爱好者。做一个有深度和广度的技术圈。”一直以来都想把专业领域的技https://mp.weixin.qq.com/s/0yqGBPbOI6QxHqK17WxU8Q

推荐阅读:

猜你喜欢

转载自blog.csdn.net/zhouruifu2015/article/details/132304296
今日推荐