日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

微信小程序中解决iOS中new Date() 时间格式不兼容

發布時間:2024/5/14 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 微信小程序中解决iOS中new Date() 时间格式不兼容 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

本周寫小程序,遇到的一個bug,在chrome上顯示得好好的時間,一到Safari/iPhone 就報錯 “invalid date”,時間格式為“2019.06.06 13:12:49”,然后利用new Date() 轉換時間戳時,使用微信開發工具、安手機開發版、安手機體驗版都沒問題,ios中無法展示。

猜想,會不會是Safari不支持yyyy-mm-dd / yyyy.mm.dd 這種格式,于是在 safari 瀏覽器測試一波,順便也測試了 “2018-12-10”格式的:

safari 瀏覽器報錯:2018.12.10 11:11:11日期格式

safari 瀏覽器報錯:2018-12-10 11:11:11 日期格式

于是就replace正則替換

let dateStr1 = '2018.12.10 11:11:11'; let dateStr2 = '2018-12-10 11:11:11'; /* 利用正則表達式替換時間中的”-或者.”為”/”即可 */ dateToTimestamp(dateStr) {if (!dateStr) {return ''}let newDataStr = dateStr.replace(/\.|\-/g, '/')let date = new Date(newDataStr);let timestamp = date.getTime();return timestamp }this.dateToTimestamp(dateStr1) this.dateToTimestamp(dateStr2) 復制代碼

后來為了驗證自己的想法,上stackoverflow上查查,看到了幾個類似的問題,這里挑一個有代表性的給大家看看:

Safari JS cannot parse YYYY-MM-DD date format?

大概的意思是說,在執行new Date( string ) 的時候,不同瀏覽器會采用不同的parse,目前chrome兩種格式都支持,而Safari只支持yyyy/mm/dd。

PS:最近在開始做移動端開發,后面應該會遇到了不少兼容性問題,不斷總結,希望以后少踩坑!

轉載于:https://juejin.im/post/5cf8d3baf265da1b916383f3

總結

以上是生活随笔為你收集整理的微信小程序中解决iOS中new Date() 时间格式不兼容的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。