uni-app IOS时间转换出问题,new Date('yyyy:mm:dd HH:mm:ss')格式的时候失败
uni-app IOS时间转换出问题,new Date(‘yyyy:mm:dd HH:mm:ss’)格式的时候失败
| 开发环境 | 版本号 | 项目创建方式 |
|---|---|---|
| HbuilderX | 3.1.8 |
示例代码:
var time1=new Date('2021-04-07').getTime();
var time2=new Date('2021-04-07 12:00:00').getTime();
var time3=new Date().getTime();
操作步骤:
var time1=new Date('2021-04-07').getTime();
var time2=new Date('2021-04-07 00:00:00').getTime();
var time3=new Date().getTime();
预期结果:
1617763446000
1617763446000
1617763446XXX
实际结果:
1617763446000
NaN
1617763446XXX
更多关于uni-app IOS时间转换出问题,new Date('yyyy:mm:dd HH:mm:ss')格式的时候失败的实战教程也可以访问 https://www.itying.com/category-93-b0.html
1 回复
更多关于uni-app IOS时间转换出问题,new Date('yyyy:mm:dd HH:mm:ss')格式的时候失败的实战教程也可以访问 https://www.itying.com/category-93-b0.html
在iOS系统中,new Date()构造函数对日期字符串格式的解析比Android更严格。你遇到的问题是因为'2021-04-07 00:00:00'这种带空格的格式在iOS Safari中不被支持。
推荐使用以下解决方案:
- 标准化日期格式(推荐)
// 使用ISO 8601格式
var time2 = new Date('2021-04-07T00:00:00').getTime();
- 使用日期组件构造
// 拆分日期时间组件
var dateStr = '2021-04-07 00:00:00';
var parts = dateStr.split(/[- :]/);
var time2 = new Date(parts[0], parts[1]-1, parts[2], parts[3], parts[4], parts[5]).getTime();
- 使用moment.js或day.js库
// 使用day.js(轻量级替代方案)
import dayjs from 'dayjs';
var time2 = dayjs('2021-04-07 00:00:00').valueOf();

