startTime: “2025-01-22 10:00:00” endTime: “2025-01-22 11:00:00”. js怎么转换成这样新字段 new:2035-01-22 10:00 -11:00
时间: 2025-06-29 22:16:51 浏览: 4
要在JavaScript中将`startTime`和`endTime`两个时间字符串合并并转换成新的格式,可以按照以下步骤操作:
### 步骤解析
1. **创建Date对象**:首先我们需要把原始的时间字符串(如"2025-01-22 10:00:00")转换为JS的日期对象(Date object)。
2. **获取所需部分**:然后从每个日期对象中提取出年、月、日及时分秒等信息。
3. **构造新字符串**:最后根据题目要求的新格式("YYYY-MM-DD HH:mm-HH:mm")组合成一个新的字符串。
下面是具体的代码实现:
```javascript
function formatTime(startTimeStr, endTimeStr){
// 将传入的时间字符串转化为 Date 对象
let startTime = new Date(startTimeStr);
let endTime = new Date(endTimeStr);
function padZero(num){return num < 10 ? '0'+num : ''+num;}
// 提取各个组成部分,并拼接为目标格式 "YYYY-MM-DD HH:mm"
const year = startTime.getFullYear() + 10; // 年份加10以便得到目标示例中的效果
const month = padZero(startTime.getMonth()+1);
const day = padZero(startTime.getDate());
const startHour = padZero(startTime.getHours());
const endHour = padZero(endTime.getHours());
const minute = padZero(startTime.getMinutes());
return `${year}-${month}-${day} ${startHour}:${minute}-${endHour}`;
}
console.log(formatTime('2025-01-22 10:00:00', '2025-01-22 11:00:00'));
```
这段代码实现了你需要的功能,即接收开始时间和结束时间为输入参数,输出形如“2035-01-22 10:00-11:00”的结果。注意这里为了匹配你的例子,“2025”被直接增加了十年变成了“2035”。
阅读全文
相关推荐


















