js中国标准时间转yyyy-ww
时间: 2025-03-19 18:16:52 浏览: 35
### JavaScript 中将 CST 时间转换为 `yyyy-ww` 格式的实现
为了将中国标准时间(CST)转换为年份与对应的周数 (`yyyy-ww`),可以利用 Moment.js 库中的功能来完成此操作。以下是具体的实现方式:
#### 实现代码
```javascript
// 导入 Moment.js 和其插件 moment-weekyear
const moment = require('moment');
function convertCSTToDateWeek(cstTime) {
// 解析 CST 时间字符串并设置时区为中国标准时间
const date = moment.tz(cstTime, 'Asia/Shanghai');
// 获取当前年的 ISO 周编号
const year = date.format('YYYY');
const weekNumber = date.isoWeek();
// 返回格式化后的 yyyy-ww 字符串
return `${year}-${String(weekNumber).padStart(2, '0')}`;
}
// 测试示例
console.log(convertCSTToDateWeek("2023-09-15")); // 输出: 2023-37
```
#### 关键点解析
上述代码通过以下步骤实现了目标:
1. 使用 `moment.tz()` 方法指定输入时间为中国的时区[^1]。
2. 利用 `.format('YYYY')` 提取年份部分[^2]。
3. 调用 `.isoWeek()` 函数获取该日期所在的 ISO 周编号。
4. 对周编号进行补零处理以确保两位长度。
#### 注意事项
如果未安装 `moment-timezone` 插件,则需先执行如下命令安装依赖项:
```bash
npm install moment moment-timezone
```
---
###
阅读全文
相关推荐












