日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

字符串格式化成时间格式_小程序wxs中的时间格式化以及格式化时间和date时间互转...

發布時間:2023/12/19 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 字符串格式化成时间格式_小程序wxs中的时间格式化以及格式化时间和date时间互转... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

WXS(WeiXin Script)是小程序的一套腳本語言,wxs 與 javascript 是不同的語言,有自己的語法,并不和 javascript 一致。其中包括了很多日常使用的javascript函數,在wxs中都是不能同樣使用的。最近在做一個列表的時候,涉及到時間格式化操作。就遇到了這個問題,以前寫好了的格式化工具函數直接拷貝到小程序項目的wxs文件中,函數不能正常執行。其中包括了下面的幾個錯誤

  • 正則表達式在字符串的replace函數中的使用方法不一樣,不能直接使用var a = /[0-9]/這種方式聲明使用。正確的方式為var reg = getRegExp("-", "g");
  • 獲取當前時間不能通過new Date()獲取,而是通過getDate方法獲取。
  • getDate('2018/12/12')可以獲取對應日期的date類型的時間。
  • 按照上面的異同,修改過后的時間格式化函數代碼為

    var formatNumber = function (n) {n = n.toString()return n[1] ? n : '0' + n }var regYear = getRegExp("(y+)", "i");var dateFormat = function (timestamp, format) {if (!format) {format = "yyyy-MM-dd hh:mm:ss";}timestamp = parseInt(timestamp);// 通過getDate()方法獲取date類型的時間var realDate = getDate(timestamp);function timeFormat(num) {return num < 10 ? '0' + num : num;}var date = [["M+", timeFormat(realDate.getMonth() + 1)],["d+", timeFormat(realDate.getDate())],["h+", timeFormat(realDate.getHours())],["m+", timeFormat(realDate.getMinutes())],["s+", timeFormat(realDate.getSeconds())],["q+", Math.floor((realDate.getMonth() + 3) / 3)],["S+", realDate.getMilliseconds()],];var reg1 = regYear.exec(format);// console.log(reg1[0]);if (reg1) {format = format.replace(reg1[1], (realDate.getFullYear() + '').substring(4 - reg1[1].length));}for (var i = 0; i < date.length; i++) {var k = date[i][0];var v = date[i][1];// getRegExp初始化一個正則表達式對象var reg2 = getRegExp("(" + k + ")").exec(format);if (reg2) {format = format.replace(reg2[1], reg2[1].length == 1? v : ("00" + v).substring(("" + v).length));}}return format; }

    把格式化的日期時間字符串轉換成時間戳

    function parse(fmt) {fmt1 = fmt.substring(0, 19);var reg = getRegExp("-", "g");fmt2 = fmt1.replace(reg, '/');var timestamp = getDate(fmt2).getTime();return timestamp; }

    調用方法如下

    function getDateByDateTimeFmt(dateTimeFmt) {return dateFormat(parse(dateTimeFmt), 'MM月dd日'); } getDateByDateTimeFmt('2012-12-12 13:12:12') // => 12月12日

    總結

    以上是生活随笔為你收集整理的字符串格式化成时间格式_小程序wxs中的时间格式化以及格式化时间和date时间互转...的全部內容,希望文章能夠幫你解決所遇到的問題。

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