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

场景重现:
最近公司开发移动端添加直播,设置开播及下播时间,使用微信提供的日期,时间选择器,返回的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系统不支持 ‘-’ 的时间格式,选择器怎么不返回 ‘/’ 格式。┐(‘~`;)┌

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值