摘要:介紹一個(gè)能夠解決對(duì)象的瀏覽器兼容問(wèn)題的簡(jiǎn)單方法。方法在瀏覽器中的兼容性問(wèn)題在不同瀏覽器中對(duì)于傳入的時(shí)間字符串的格式要求是不一樣的。下面在瀏覽器中輸入相同內(nèi)容,查看對(duì)應(yīng)結(jié)果可以發(fā)現(xiàn),僅對(duì)分割日期的形式支持,對(duì)分割日期的形式并不支持。
介紹一個(gè)能夠解決Date對(duì)象的瀏覽器兼容問(wèn)題的簡(jiǎn)單方法。
new Date()、Date.parse()方法在瀏覽器中的兼容性問(wèn)題Date在不同瀏覽器中對(duì)于傳入的時(shí)間字符串的格式要求是不一樣的。比如在chrome瀏覽器的控制臺(tái)中輸入以下內(nèi)容,會(huì)得到相應(yīng)結(jié)果:
Date.parse("2015-11-11 00:00:00") //->1447171200000 Date.parse("2015/11/11 00:00:00") //->1447171200000 new Date("2015-11-11 00:00:00") //->Wed Nov 11 2015 00:00:00 GMT+0800 (CST) new Date("2015/11/11 00:00:00") //->Wed Nov 11 2015 00:00:00 GMT+0800 (CST)
可以發(fā)現(xiàn),chrome對(duì)于"-"和"/"分割日期的形式都是支持的,能夠返回正確的毫秒數(shù)或者時(shí)間格式。
下面在safari瀏覽器中輸入相同內(nèi)容,查看對(duì)應(yīng)結(jié)果:
> Date.parse("2015-11-11 00:00:00") < NaN = $1 > Date.parse("2015/11/11 00:00:00") < 1447171200000 = $2 > new Date("2015-11-11 00:00:00") < Invalid Date = $3 > new Date("2015/11/11 00:00:00") < Wed Nov 11 2015 00:00:00 GMT+0800 (CST) = $4
可以發(fā)現(xiàn),safari僅對(duì)"/"分割日期的形式支持,對(duì)"-"分割日期的形式并不支持。
通過(guò)以上實(shí)驗(yàn),我們可以觀察出chrome和safari對(duì)于不同格式的時(shí)間字符串的支持情況。chrome同時(shí)支持"-"和"/"分割日期的時(shí)間字符串;safari不支持"-"分割日期的時(shí)間字符串。
一個(gè)簡(jiǎn)單有效的解決方法下面是一個(gè)比較好的解決方案:
var arr = "2010-03-15 10:30:00".split(/[- / :]/), date = new Date(arr[0], arr[1]-1, arr[2], arr[3], arr[4], arr[5]); console.log(date); //-> Mon Mar 15 2010 10:30:00 GMT+0000 (GMT Standard Time)
該方法為先將時(shí)間字符串用split方法進(jìn)行分割拼裝為一個(gè)數(shù)組,再將每個(gè)數(shù)組的項(xiàng)作為傳參傳入new Date()方法,從而將不同形式的字符串轉(zhuǎn)換成有效的時(shí)間。
該方法對(duì)于所有瀏覽器生效。
博客文章地址:http://joebon.cc/date-cross-browser-safari-chrome
參考資料:http://stackoverflow.com/questions/5324178/javascript-date-parsing-on-iphone
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/79471.html
摘要:出現(xiàn)原因在子頁(yè)面關(guān)閉時(shí),會(huì)釋放掉在子頁(yè)面中聲明賦值的對(duì)象。所以在父頁(yè)面所有對(duì)這個(gè)對(duì)象的引用操作都會(huì)產(chǎn)生這個(gè)錯(cuò)誤。然后在父頁(yè)面中使用變成對(duì)象。 在IE瀏覽器中出現(xiàn)的問(wèn)題 1.不能執(zhí)行已釋放 Script 的代碼 1.bug出現(xiàn)背景:在使用iframe標(biāo)簽時(shí),如果子頁(yè)面向父頁(yè)面?zhèn)鬟f在子頁(yè)面創(chuàng)建的對(duì)象(所有對(duì)象,包括數(shù)組,函數(shù),正則等)時(shí),會(huì)出現(xiàn)這個(gè)bug。 2.bug出現(xiàn)原因: 在子頁(yè)面關(guān)...
摘要:優(yōu)點(diǎn)簡(jiǎn)單粗暴,直接調(diào)用缺點(diǎn)兼容性不太好,不過(guò)的話都支持你可能不知道的前端知識(shí)點(diǎn)對(duì)象和的方法。下面從深層次剖析一下對(duì)于開(kāi)始的兩個(gè)賦值語(yǔ)句,,,相當(dāng)于,而顯然等于。同理可以分析第三個(gè)賦值語(yǔ)句 有些東西很好用,但是你未必知道;有些東西你可能用過(guò),但是你未必知道原理。 實(shí)現(xiàn)一個(gè)目的有多種途徑,俗話說(shuō),條條大路通羅馬。很多內(nèi)容來(lái)自平時(shí)的一些收集以及過(guò)往博客文章底下的精彩評(píng)論,收集整理拓展一波,發(fā)...
摘要:優(yōu)點(diǎn)簡(jiǎn)單粗暴,直接調(diào)用缺點(diǎn)兼容性不太好,不過(guò)的話都支持你可能不知道的前端知識(shí)點(diǎn)對(duì)象和的方法。下面從深層次剖析一下對(duì)于開(kāi)始的兩個(gè)賦值語(yǔ)句,,,相當(dāng)于,而顯然等于。同理可以分析第三個(gè)賦值語(yǔ)句 有些東西很好用,但是你未必知道;有些東西你可能用過(guò),但是你未必知道原理。 實(shí)現(xiàn)一個(gè)目的有多種途徑,俗話說(shuō),條條大路通羅馬。很多內(nèi)容來(lái)自平時(shí)的一些收集以及過(guò)往博客文章底下的精彩評(píng)論,收集整理拓展一波,發(fā)...
摘要:優(yōu)點(diǎn)簡(jiǎn)單粗暴,直接調(diào)用缺點(diǎn)兼容性不太好,不過(guò)的話都支持你可能不知道的前端知識(shí)點(diǎn)對(duì)象和的方法。下面從深層次剖析一下對(duì)于開(kāi)始的兩個(gè)賦值語(yǔ)句,,,相當(dāng)于,而顯然等于。同理可以分析第三個(gè)賦值語(yǔ)句 有些東西很好用,但是你未必知道;有些東西你可能用過(guò),但是你未必知道原理。 實(shí)現(xiàn)一個(gè)目的有多種途徑,俗話說(shuō),條條大路通羅馬。很多內(nèi)容來(lái)自平時(shí)的一些收集以及過(guò)往博客文章底下的精彩評(píng)論,收集整理拓展一波,發(fā)...
閱讀 932·2021-11-19 11:29
閱讀 3409·2021-09-26 10:15
閱讀 3131·2021-09-22 10:02
閱讀 2508·2021-09-02 15:15
閱讀 2025·2019-08-30 15:56
閱讀 2491·2019-08-30 15:54
閱讀 3037·2019-08-29 16:59
閱讀 706·2019-08-29 16:20