解决小程序中Data.parse()获取时间戳IOS不兼容

由于与后台接口必须对比时间戳所以首先得前台获取时间戳。刚开始是获取手机本地时间,但用户改了时间就废了。。。。。

后来就从服务器上获取个时间再转换为时间戳(是不是很操蛋,先从服务器上获取在TM的自己比较),但后台直接给我一个时间戳不就完事了么,

还就给我一个时间自己转然后问题就来了。

 

[csharp] view plain copy
 
  1. var resData = '2017-3-14 10:03:45'  
  2.   
  3.           console.log("返回时间:" + resData)  
  4.           var time = Date.parse(new Date(resData)) / 1000;  

这样开发工具、手机开发版、手机体验版都没问题。但我穷碧一个用的安卓手机,用苹果都说啥都没有。。。于是开始找问题,发现IOS获取时间转换后NaN。
原来第一次搞手机端。。。。。
各种度娘后才知道,歪果银特么的只识别2017/3/14。
于是就替换,replace还只能替换第一个,还有正则全部

[csharp] view plain copy
 
    1. var resData = '2017-3-14 10:03:45';  
    2.    resData=resData..replace(/-/g, '/');  
    3.           console.log("返回时间:" + resData);  
    4.           var time = Date.parse(new Date(resData)) / 1000;  

 

var data1 = new Date();
var data2 = parseInt(data1.getTime() / 1000);
console.log(data2)
var stringTime1 = "2017/08/16 10:00:00";
var stringTime2 = "2017/09/30 11:59:00";
var timestamp1 = Date.parse(new Date(stringTime1));
timestamps1 = timestamp1 / 1000;
timestamps2 = timestamp2 / 1000;
alert(data1+":"+data2+":"+timestamps1+":"+timestamps2)
alert(typeof(data2)+":"+typeof(timestamps1)+":"+typeof(timestamps2))

 

posted @ 2017-08-25 17:58  莫笑我胡为  阅读(505)  评论(0编辑  收藏  举报