申请博客好几个月了,一直想写一些东西可是总觉着本身写很差,就一直搁浅了。废话很少说,进入正题!html
ios中和Safari浏览器中对js Date对象的支持前端
1.问题情形是这样的,须要在特定的时间显示不一样的内容。ios
解决办法有两种:chrome
1.经过后台获取服务器的时间。浏览器
在返回给前端标志,前端经过模板也好,经过其余方式进行判断也好,显示不一样的内容。这个咱们无论...服务器
2.经过本地获取系统时间显示不一样的内容。函数
我采用的就是这种方式,可是这里就出现了问题。附上代码测试
function setContentWithTime(time){ var current = new Date(), setDate = new Date(time).getTime(); var curTime = new Date(current.getFullYear()+'-'+(current.getMonth()+1)+'-'+current.getDate()).getTime(); if(curTime == setDate){ ... }else{ ... } }
setContentWithTime("2015-8-13");
上面这段代码在chrome和ff里面跑都没有问题。可是在safari里面跑就出现了问题。spa
问题以下:.net
ok,问题就出现了,在safari里面是没法对形如"xxxx-xx-xx"这种形式的日期进行变换,在safari里面
4.在那些ios系统中是不支持js 的Date()这种转换的。请你们测试一下,本人知道的是在ios8.4里面仍然存在这个问题。
5.提到这里咱们也能够再次查看js Date对象里面的构造方法会发现。其实咱们能够采起另外的方法进行new Date;
查资料发现Date的构造函数:new Date()new Date(milliseconds)new Date(datestring)new Date(year, month)new Date(year, month,day)new Date(year, month, day, hours)new Date(year, month, day, hours, minutes)new Date(year,month, day, hours, minutes, seconds)new Date(year, month, day, hours, minutes, seconds,microseconds)
这里须要注意的是:
结语:实际上是个小问题,可是在作项目的过程当中,老是让人头疼,请你们勿喷!!!谢谢!
参考文献:
http://www.w3school.com.cn/jsref/jsref_obj_date.asp
http://blog.sina.com.cn/s/blog_6a0cd5e501011so7.html
http://www.cnblogs.com/keke/p/3372558.html
http://blog.csdn.net/liu510817387/article/details/8688216