关于时间戳转化时间在部分ios机型上会NaN的问题

原来的代码:

function format(shijianchuo) {

    var time = new Date(shijianchuo);

    var y = time.getFullYear();

    var m = time.getMonth() + 1;

    var d = time.getDate();

    var h = time.getHours();

    var mm = time.getMinutes();

    var s = time.getSeconds();

    return y + '-' + add0(m) + '-' + add0(d) + ' ' + add0(h) + ':' + add0(mm)

}

function add0(m) {

    return m < 10 ? '0' + m : m

}

这样写在大部分机型上是可以实现的,但是部分ios机型会显示出NaN。

查了一下,只需要把数字转化成float型就可以了~

即:把这句:var time = new Date(shijianchuo);

改成:var time = new Date(parseFloat(shijianchuo));

就ok啦,也是一个很简单的问题。

 

反过来,把格式化了的时间转化为时间戳,ios也不一样,比如'2020-08-09 15:22:33'这种,安卓可以直接这样:

var timestamp = new Date('2020-08-09 15:22:33').getTime();

ios就需要这样:

var timestamp = new Date('2020-08-09 15:22:33'.replace(/-/g, '/')).getTime();

摊手。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值