当前位置: 移动技术网 > 移动技术>移动开发>IOS > IOS系统中使用new Date()报错valid Date

IOS系统中使用new Date()报错valid Date

2020年07月18日  | 移动技术网移动技术  | 我要评论

场景重现:
最近公司开发移动端添加直播,设置开播及下播时间,使用微信提供的日期,时间选择器,返回的value为 ‘2020-01-01’ 及 ‘10:00’ 格式。由于接口需要上传时间戳,因此使用下面函数生成。

getTime(dateString) {
    var date = new Date(dateString);

    return Math.round(date.getTime() / 1000);		// 生成十位数时间戳返回
},

开开心心交完需求后,测试说苹果手机一直出问题,安卓却没有问题,前端新人抓耳挠腮。多重检测发现是这个函数出现了问题。苹果手机返回的数据是NaN。打印了date发现苹果返回 valid Date 。查了资料才发现苹果new Date()函数不支持‘2020-01-01’格式日期。需为‘2020/01/01’格式。因此修改函数为:

getTime(dateString) {
 	// 苹果手机new Date()不支持‘2020-01-01’格式,需转换为‘2020/01/01’
	dateString = dateString.toString().replace(/-/g, "/");     
	var date = new Date(dateString);

	return Math.round(date.getTime() / 1000);
},

吐槽,既然ios系统不支持 ‘-’ 的时间格式,选择器怎么不返回 ‘/’ 格式。┐(‘~`;)┌

本文地址:https://blog.csdn.net/chen_x_w/article/details/107388755

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网