Javascript-時間戳的格式化

// format:yyyy-mm-dd h:i:s  time:毫秒級時間戳
// y-年份 m-月份 d-日 h-小時 i-分 s-秒 q-季度 S-毫秒
function dateFtt(format,time)
{
    // 以下的m,d,h,i,s,q,S,y只是正則表達式中一個普通文本,用于匹配相應的字符
    // 以下的m+,d+,h+,i+,s+,q+,S+,y+  意思為:匹配1個到多個的字符
    //  (y+)的意思是:y+匹配到的內(nèi)容可能通過分組來取到,這里是通過第一個分組取到。從后面的代碼中可以看出,RegExp.$1就是取到的y+匹配到的內(nèi)容

    // 1.直接量語法
    // 語法:/pattern/  比如 /(y+)/
    // 2.創(chuàng)建 RegExp 對象
    // 語法:new RegExp(pattern)  比如 new RegExp("(y+)")
    // 這是使用的兩種寫法 效果一致

    // if(/(y+)-(m+)/.test(format)){
    //   RegExp.$1為(y+)匹配到的內(nèi)容
    //   RegExp.$2為(m+)匹配到的內(nèi)容
    // }

    // test()   檢索字符串中指定的值。返回 true 或 false。
    // 語法  RegExpObject.test(string)

    // substr() 方法可在字符串中抽取從 start 下標開始的指定數(shù)目的字符。
    // 語法 stringObject.substr(start,length)
    // start 必須數(shù)值  -1 最后一個字符 -2 的倒數(shù)第二個字符
    // length  可選數(shù)值   忽略則是返回 開始位置到結尾的字符串

    // replace() 方法用于在字符串中用一些字符替換另一些字符,或替換一個與正則表達式匹配的子串。
    // 語法 stringObject.replace(regexp/substr,replacement)
    // regexp/substr  必需  規(guī)定子字符串或要替換的模式的 RegExp 對象。請注意,如果該值是一個字符串,則將它作為要檢索的直接量文本模式,而不是首先被轉(zhuǎn)換為 RegExp 對象。
    // replacement    必需。一個字符串值。規(guī)定了替換文本或生成替換文本的函數(shù)。

    var date = new Date();
    date.setTime(time); //寫入時間
    var o = {
        "m+" : date.getMonth()+1,                 //月份
        "d+" : date.getDate(),                    //日
        "h+" : date.getHours(),                   //小時
        "i+" : date.getMinutes(),                 //分
        "s+" : date.getSeconds(),                 //秒
        "q+" : Math.floor((date.getMonth()+3)/3), //季度
        "S"  : date.getMilliseconds()             //毫秒
    };
    if(/(y+)/.test(format))
        format=format.replace(RegExp.$1, (date.getFullYear()+"").substr(4 - RegExp.$1.length));
    for(var k in o)
        if(new RegExp("("+ k +")").test(format))
            format = format.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00"+ o[k]).substr((""+ o[k]).length)));   // 單位數(shù)前面補填0 雙位數(shù) 則不管
    return format;
}

最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

  • 我家大寶出差已經(jīng)三天了,以前我們在同單位的時候我?guī)缀鯖]有注意到他,后來他曾經(jīng)告訴過我,那時的他一年基本都是在外面出...
    什么樣的幸福閱讀 199評論 0 0
  • 今日心得 1.來自萬維鋼 我年輕的時候一心想當物理學家,根本沒有想過平庸的可能性,所以現(xiàn)在是一個不斷失望的過程,但...
    Pheeb閱讀 186評論 0 1
  • 葉未到 花已開 不是葉走的太慢 而是花向往著藍天 風兒是花的紅娘 漫天傳遞花的芳香 天空擦亮了眼 蔚藍的眼神 迷亂...
    千尹閱讀 824評論 40 86

友情鏈接更多精彩內(nèi)容