ms.js是一个轻量级的毫秒转换工具库,专门用于JavaScript中的时间格式与毫秒之间的便捷转换。无论你是前端开发者还是Node.js工程师,这个库都能帮你轻松处理时间格式化问题。
【免费下载链接】ms项目地址: https://gitcode.com/gh_mirrors/msj/ms.js
🚀 快速入门
安装ms.js
首先,通过以下命令安装ms.js:
npm install ms或者如果你使用pnpm:
pnpm add ms基本用法示例
ms.js的核心功能非常简单直观:
import ms from 'ms'; // 将时间字符串转换为毫秒 ms('2 days'); // 返回 172800000 ms('1d'); // 返回 86400000 ms('10h'); // 返回 36000000 ms('5s'); // 返回 5000💡 核心功能详解
双向转换能力
ms.js最强大的特性是支持双向转换:
从时间字符串到毫秒:
ms('1 minute'); // 60000 ms('2.5 hrs'); // 9000000 ms('1y'); // 31557600000从毫秒到时间字符串:
ms(60000); // "1m" ms(2 * 60000); // "2m" ms(-3 * 60000); // "-3m"详细格式支持
ms.js支持多种时间格式:
- 简写格式:
1d、2h、30m、10s - 完整格式:
1 day、2 hours、30 minutes - 小数支持:
2.5 hours、1.5 days - 负数支持:
-3 days、-1h
🛠️ 实战应用场景
场景1:计算时间间隔
const start = Date.now(); // 执行一些操作... const end = Date.now(); const duration = ms(end - start); // 得到易读的时间字符串场景2:设置定时器
// 设置一个5分钟的定时器 setTimeout(() => { console.log('时间到!'); }, ms('5m'));场景3:用户友好的时间显示
function formatUptime(uptimeMs) { return ms(uptimeMs, { long: true }); } formatUptime(60000); // "1 minute" formatUptime(7200000); // "2 hours"⚙️ 进阶配置选项
长格式输出
通过{ long: true }选项,可以获得更易读的时间描述:
ms(60000, { long: true }); // "1 minute" ms(2 * 60000, { long: true }); // "2 minutes" ms(ms('10 hours'), { long: true }); // "10 hours"TypeScript完美支持
ms.js提供完整的TypeScript类型定义:
import ms, { StringValue } from 'ms'; // 类型安全的用法 const duration: StringValue = '1h 30m'; const milliseconds = ms(duration);🔧 开发与测试
项目使用现代化的开发工具链:
- 测试运行:
npm test - 代码检查:
npm run eslint-check - 类型检查:
npm run type-check
❓ 常见问题解答
Q: ms.js支持哪些时间单位?
A: 支持年(y)、周(w)、天(d)、小时(h)、分钟(m)、秒(s)、毫秒(ms)
Q: 如何处理无效的时间字符串?
A: ms.js会抛出错误,建议在try-catch块中使用。
Q: ms.js能在浏览器中使用吗?
A: 当然可以!ms.js同时支持Node.js和浏览器环境。
📋 总结
ms.js作为JavaScript时间处理的实用工具,具有以下优势:
- ✅ 极简API,学习成本低
- ✅ 双向转换,使用灵活
- ✅ TypeScript原生支持
- ✅ 跨平台兼容
- ✅ 轻量级,无额外依赖
通过本指南,你已经掌握了ms.js的核心用法。现在就可以在你的项目中轻松处理时间转换任务了!
【免费下载链接】ms项目地址: https://gitcode.com/gh_mirrors/msj/ms.js
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考