2018-12-25 15:58:18 qq_35790269 阅读数 332

最近开发微信小程序的过程中遇到了一个安卓和苹果手机系统的一个坑,页面中含有日期选择控件,当选择之后,在比较日期的时候,安卓手机正常,苹果手机一直是valid date,ios中不支持 - 连接日期

如下例子所示:

new Date('2018-10-01') > new Date('2018/9/22')

// 输出false

若一个为月份,一个日期相比较:

new Date('2018/10') > new Date('2018/9/22')

// 输出 false

 所以在ios中,日期格式需要转换为 / 连接日期,并且日期比较需要月份与月份比,日期与日期比。

2019-10-22 15:10:31 weixin_43374226 阅读数 35

**

iOS下通过new Date设置日期的兼容性问题

**
在iOS手机浏览器上存在日期兼容性问题

var date = new Date("2019-10-22 15:00:00");

在iOS中不兼容,会返回Invalid Date。通过new Date()设置日期时不支持“-”格式,涉及到日期的操作,应该使用“/”处理

var date = new Date("2019/10/22 15:00:00");

或者

var d = new Date("2019-10-22 15:00:00".replace(/-/g, "/"));
2018-09-04 11:53:40 qq_39090934 阅读数 111

一般情况下,我们创建的日期变量格式都是 :

"2018-08-08 12:00:00"

虽然在安卓和浏览器下没有问题,但是,这样的日期格式在iOS和Safari下会返回 valid Date。因为在苹果中是不支持 “-“ 连接日期的。

解决方案

var data = new  Date("2018/08/08 12:00:00")

这样iOS和Safari都能使用咯

2017-08-11 14:37:05 huangxin112 阅读数 8817

一般这样创建一个日期变量

var d = new Date("2017-08-11 12:00:00");

发现在iOS中不兼容,返回valid Date。

IOS中不支持 - 连接日期

需要写成


var d = new Date("2017-08-11 12:00:00".replace(/-/g, "/"));


这样来兼容ios


2018-08-17 12:39:55 ZhangYaBo_Code 阅读数 736

之前写的创建时间一直是这样的

var date = new Date("2018-08-17 10:30");

今天写的时候在ios发现getTime()的时候返回NAN,后面输出日期的时候new Date("2018-08-17 10:30")形式在ios返回valid Date,原来ios不支持 - 的这种形式
解决办法:

var date = new Date("2018-08-17 10:30".replace(/-/g, '/'));

+new Date()

在js中,可以在某个元素之前使用+号,是将该元素转为Number类型,如果转换失败则得到NaN
+new Date() 调用的是valueOf()方法,Date.protoType.valueOf()等于Date.protoType.getTime(),所以会转为时间戳

<input  type="tel" maxlength="6"/> 可以调起原生数字键盘
没有更多推荐了,返回首页