介绍
human-time 是一个轻量级的 JavaScript 库,它可以将时间戳转换成人类可读的形式。它可以很方便地让你将 Unix 时间戳转换成类似 "3 hours ago" 等可读的形式。这个包非常适合于前端和 Node.js 应用程序。
Installation
在使用 human-time 之前,需要先在项目中安装它:
npm install human-time --save
Usage
human-time 的使用非常简单。在你的项目中引入模块后,你只需传入一个 Unix 时间戳即可获得一个可读的时间字符串:
var humanTime = require('human-time'); var time = 1616223567; console.log(humanTime(time)); // 输出 "10 minutes ago"
human-time 也支持传入 Date 对象:
var humanTime = require('human-time'); var date = new Date('2020-10-24T14:07:51.729Z'); console.log(humanTime(date)); // 输出 "7 months ago"
human-time 提供了一些可选的选项用于自定义输出。例如,你可以使用 futureSuffix
和 pastSuffix
定义将来和过去的时间的后缀:
var humanTime = require('human-time'); var time = 1616223567; console.log(humanTime(time, { futureSuffix: 'later', pastSuffix: 'ago' })); // 输出 "10 minutes ago"
你还可以使用 round
选项来控制舍入精度。默认情况下,human-time 会使用舍入精度 1,将时间转换成最接近的时间单位:
var humanTime = require('human-time'); var time = 1616223567; console.log(humanTime(time, { round: true })); // 输出 "10 minutes ago"
如果你需要更高精度的舍入,你可以传递一个整数来代替 true。例如,你可以使用以下代码将时间舍入到分钟:
var humanTime = require('human-time'); var time = 1616223567; console.log(humanTime(time, { round: 5 // 5 代表分钟 })); // 输出 "10 minutes ago"
如果你的项目需要支持多语言,human-time 提供了可定制的本地化选项。你可以传入一个对象,在其中指定所需的字词,例如 "seconds"、"minutes"、"hours" 等:
-- -------------------- ---- ------- --- --------- - ---------------------- --- ---- - ----------- --------------------------- - --------- - -------- ---- -------- ---- ------ ---- ----- ---- ------- ---- ------ ---- ------------- ---- ----------- --- - ---- -- -- ------展开代码
总结
human-time 提供了一个简单但强大的方式来将 Unix 时间戳转换成人类可读的形式。它具有广泛的可配置性和可定制性,在许多场合下都能发挥作用。我希望这篇文章能够帮助你入门使用 human-time,提高你的前端开发技能。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/human-time