javascript - 如何将前面的“0”添加到小于 10 的天数和月数
问题描述
我在显示来自后端 API 的数据时遇到了一些问题,因为传入的日期格式不正确。
目前,如果日期和月份数字小于 10,则输入前不带“0”的数字。例如,9
应该是09
所有传入日期均采用以下格式:year/month/day
.
对于小于 10 的数字,如何将日期转换为前面有零的格式?
我当前的代码:
let date = '2021/1/31';
const addZeros = (date) => {
const year = date.split('/')[0];
const month = date.split('/')[1];
const day = date.split('/')[2];
return `${year}-${month}-${day}`;
};
console.log(addZeros(date));
测试:
2021/9/14
--> 2021/09/14
2021/1/7
--> 2021/01/07
2021/10/17
--> 2021/10/17
解决方案
您可以使用split、map和join轻松实现结果。
function convertDate(str) {
return str
.split("/")
.map((s) => (s < 10 ? `0${s}` : s))
.join("/");
}
console.log(convertDate("2021/9/14")); //--> 2021/09/14
console.log(convertDate("2021/1/7")); //--> 2021/01/07
console.log(convertDate("2021/10/17")); //--> 2021/10/17
推荐阅读
- r - 如何从 R 运行 orca?
- php - 向 Woocommerce 发送的电子邮件添加元素的最佳实践
- scala - 如何在 Flink-Scala 中做简单的缓存文件?
- python-3.x - 将 yfinance 数据帧转换为多索引数据帧
- richtextbox - 有没有办法在网页上生成内容丰富的富文本?
- opencv - 使用 Charuco 校准相机时抽取的目的是什么?
- swift - 每当我在 tableView 行中选择一行时,Swift 都无法到达目标类
- javascript - classList.toggle() 只工作一次
- c++ - 使用 OpenMP 并行化合并排序算法中的划分步骤和合并步骤
- php - 比较两个 get_plugins() (wordpress) 结果以显示版本差异