<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-57  評論-129  文章-0  trackbacks-0
    今天和網友聊起在javascript里面實現DateFormat 的話題。

    把想法發布一下,當是筆記。

    格式化:
      1、先用正則把日期表達式分段:
        var tokens = "yyyy-MM-dd(沒有時間)".match(/y+|M+|d+|m+|[^yMdm]+/g)
        //結果數組為:yyyy,-,MM,-,dd,(沒有時間)
      2、將其中的yyyy MM dd 替換成相映的處理對象
     
      3、格式化時,先復制數組,依次遍歷,如果元素是處理對象,那么元素值替換成處理結果。

      4、將新數組join。即為需要結果。

      5、parse時。先復制數組,若元素為字符串,精確匹配。若未處理對象,讀取需要的值,匹配失敗,則終止操作,返回結果。




    想法而已,實際實現時可能還有很多現在無法意料的事情:)

    posted on 2007-06-07 16:27 金大為 閱讀(1390) 評論(3)  編輯  收藏 所屬分類: JavaScript

    評論:
    # re: 正則表達式實現JavaScript日期格式化的想法。 2007-06-07 16:30 | 金大為
    yyyy MM dd 的處理對象可以根據首字母確定,長度可以作為處理函數的參數,這樣,減少對象數目。維護起來方便一點。  回復  更多評論
      
    # re: 正則表達式實現JavaScript日期格式化的想法。 2007-06-07 16:36 | trydofor
    提交一個想法:字符串替換法:)
    1.構造一個字典,里面定義可能出現的字符串元
    2.把1中的字典key對應的value初始化
    3.replace

    偽代碼:
    function format(string,date)
    {

    datefields={};
    datefields.yyyy=2007;
    datefields.yy=07;
    datefields.MMMMM="June";
    datefields.MMM="JUN";
    datefields.MM="06";

    for(var k in datefields)
    {
    while(string.indexOf(k)>=0)
    string = string.replace(k,datefields[k]);
    }
    return string;
    }  回復  更多評論
      
    # re: 正則表達式實現JavaScript日期格式化的想法。 2007-06-08 13:35 | -
    主站蜘蛛池模板: 无码精品人妻一区二区三区免费看| selaoban在线视频免费精品| 久久精品国产免费观看| 亚洲伦另类中文字幕| 无码人妻久久一区二区三区免费| 亚洲国产另类久久久精品| 免费无码一区二区三区蜜桃| 亚洲AV无码久久| 91精品免费不卡在线观看| 亚洲黄色免费网址| 男人的好免费观看在线视频| 久久亚洲精品国产亚洲老地址| 好先生在线观看免费播放| 亚洲国产精品成人综合色在线| 日韩视频在线免费| 特黄特色的大片观看免费视频| 最新精品亚洲成a人在线观看| a级毛片毛片免费观看久潮喷| 亚洲国产一区二区三区青草影视| 51精品视频免费国产专区| 亚洲宅男精品一区在线观看| 国产成人免费全部网站| 国产久爱免费精品视频| 亚洲一卡2卡三卡4卡有限公司| 青娱乐免费视频在线观看| 亚洲av色香蕉一区二区三区 | 日本无卡码免费一区二区三区| 婷婷亚洲综合五月天小说在线| 亚洲色成人网站WWW永久| 99re在线免费视频| 亚洲Av无码国产一区二区| 亚洲精品无码久久久久| 18禁美女裸体免费网站| 国产亚洲蜜芽精品久久| 亚洲AV永久青草无码精品| 久久久www成人免费毛片 | 亚洲av无码国产精品色在线看不卡| 久久www免费人成看国产片| 亚洲理论片中文字幕电影| 亚洲第一黄色网址| 四虎在线视频免费观看视频|