目录
Node.js进阶之使用 superagent 与 cheerio 模块详解,并实现简单的爬虫案例
Node.js开发进阶之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匿名函数的定义、特性、作用和使用场景详解
-
Node.js浏览器端功能测试之mocha、chai、phantomjs的功能特性、断言和覆盖率测试实战案例详解
-
Node.js后端功能测试之mocha、should、istanbul的功能特性、断言和覆盖率测试实战案例详解
-
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专栏
更多资料 · 微信公众号搜索【CTO Plus】关注后,获取更多,我们一起学习交流。
关于公众号的描述访问如下链接
推荐阅读: