中文字幕免费精品_亚洲视频自拍_亚洲综合国产激情另类一区_色综合咪咪久久

Ext JS框架中日期函數的用法及日期選擇控件的實現
來源:易賢網 閱讀:2444 次 日期:2016-06-25 13:43:54
溫馨提示:易賢網小編為您整理了“Ext JS框架中日期函數的用法及日期選擇控件的實現”,方便廣大網友查閱!

Ext.Date是一個單例,封裝了一系列日期操作函數,擴展JavaScript Date的功能,下面列出一些常用的功能。

基本函數:

Ext.Date.add(date, interval, value) 給date增加或減少時間,這個函數不改變原有Date對象的值,而是返回一個新的Date對象。

Ext.Date.between(date, start, end) 判斷date是否在start和end之間。

Ext.Date.clearTime(date, clone) 把date的時間設置成00小時00分00秒000毫秒。

Ext.Date.clone(date) 克隆date的一個副本。

Ext.Date.format(date, format)把日期格式化,返回格式化后的字符串。

Ext.Date.getDayOfYear(date)獲取date是年中的第幾天。

Ext.Date.getDaysInMonth(date)獲取date是月中的第幾天。

Ext.Date.getFirstDateOfMonth(date)獲取date所在月份的第一天。

Ext.Date.getFirstDayOfMonth(date)獲取date所在月份第一天的星期。

Ext.Date.getLastDateOfMonth(date)獲取date所在月份的最后一天。

Ext.Date.getLastDayOfMonth(date)獲取date所在月份最后一天的星期。

Ext.Date.getWeekOfYear(date) 獲取date所在年中的第幾個星期。

Ext.Date.isLeapYear(date)date所在年份是否閏年。

Ext.Date.now() 返回當前時間到1970年1月1日的毫秒數。在chrome、ie9和ie10中已經有Date.now()實現相同的功能。

Ext.Date.parse(input, format, strict)根據輸入的字符串創建日期,Date.parse()有類似的功能。

下面零碎地舉幾個例子綜合來看一下:

// Ext.Date.add(date, interval, value) 給date增加或減少時間,這個函數不改變原有Date對象的值,而是返回一個新的Date對象。 

// @param  {Date}  date   原日期對象。 

// @param  {String} interval value的單位,可以選Ext.Date.DAY、Ext.Date.HOUR、Ext.Date.MINUTE、Ext.Date.MONTH、 

//               Ext.Date.SECOND、Ext.Date.YEAR、Ext.Date.MILLI。 

// @param  {number} value   日期對象需要增加的值。 

// @return {Date}       返回增加值后的Date對象。 

// Example 

var date = Ext.Date.add(new Date('10/29/2006'), Ext.Date.DAY, 5); //增加5天 

console.log(date); //返回結果 Fri Nov 03 2006 00:00:00 GMT+0800 (中國標準時間) 

var date = Ext.Date.add(new Date('10/29/2006'), Ext.Date.DAY, -5); //減少5天,如果值是負數,則減少。 

console.log(date); //返回結果 Tue Oct 24 2006 00:00:00 GMT+0800 (中國標準時間) 

var date = Ext.Date.add(new Date('10/29/2006'), Ext.Date.YEAR, 2); //增加2年 

console.log(date); //返回結果 Wed Oct 29 2008 00:00:00 GMT+0800 (中國標準時間) 

// Ext.Date.between(date, start, end) 判斷date是否在start和end之間。 

// @param  {Date}   date  要判斷的日期。 

// @param  {Date}   start  

// @param  {Date}   end 

// @return {Boolean}     如果date在start和end之間返回true,否則返回false。 

// Example 

var date = new Date('10/29/2006'); 

var start = new Date('10/5/2006'); 

var end = new Date('11/15/2006'); 

Ext.Date.between(date, start, end); //返回true 

// Ext.Date.clearTime(date, clone) 把date的時間設置成00小時00分00秒000毫秒。 

// @param  {Date}   date  

// @param  {Bollean} clone 可選參數。如果為true則返回date的一個副本,如果為false則返回date本身,默認為false。 

// @return {Date}      返回設置后的日期。 

// Example 

var date = new Date('10/30/2012 14:30:00'); 

Ext.Date.clearTime(date); //返回 Tue Oct 30 2012 00:00:00 GMT+0800 (中國標準時間) 

// Ext.Date.clone(date) 克隆date的一個副本。 

// @param  {Date} date 

// @return {Date} 返回克隆后的Date。 

// Example 

var orig = new Date('10/30/2012'); 

var copy = Ext.Date.clone(orig); //克隆一個值 

// Ext.Date.format(date, format) 把日期格式化,返回格式化后的字符串。 

// @param  {Date}  date  日期。 

// @param  {String} format 日期格式,Y-年,m-月,d-日,H-24小時,i-分鐘,s-秒 

// @return {String}     返回格式化后的字符串。 

// Example 

var date = new Date('10/20/2012 14:30:00'); 

Ext.Date.format(date, 'Y-m-d H:i:s');    // 2012-10-20 14:30:00 

Ext.Date.format(date, 'Y年m月d日 H:i:s');  // 2012年10月20日 14:30:00 

// Ext.Date.getDayOfYear(date) 獲取date是年中的第幾天 

// @param  {Date}  date 日期。 

// @return {Number}    返回天數,取值范圍0~364,如果是閏年則有365。 

// Example 

var date = new Date('10/20/2012 14:30:00'); 

Ext.Date.getDayOfYear(date); //返回 293 

// Ext.Date.getDaysInMonth(date) 獲取date是月中的第幾天 

// @param  {Date}  date 日期。 

// @return {Number}    返回天數。 

// Example 

var date = new Date('10/20/2012 14:30:00'); 

Ext.Date.getDayOfYear(date); //返回 31 

// Ext.Date.getFirstDateOfMonth(date) 獲取date所在月份的第一天 

// @param  {Date} date 日期。 

// @return {Date}    返回所在月份的第一天。 

// Example 

var date = new Date('10/20/2012 14:30:00'); 

Ext.Date.getFirstDateOfMonth(date); //返回 Mon Oct 01 2012 00:00:00 GMT+0800 (中國標準時間) 

// Ext.Date.getFirstDayOfMonth(date) 獲取date所在月份第一天的星期 

// @param  {Date}  date 日期。 

// @return {Number}    返回所在月份第一天的星期,取值范圍0~6。 

// Example 

var date = new Date('10/20/2012 14:30:00'); 

Ext.Date.getFirstDayOfMonth(date); //返回 1,表示星期一 

// Ext.Date.getLastDateOfMonth(date) 獲取date所在月份的最后一天 

// @param  {Date} date 日期。 

// @return {Date}    返回所在月份的最后一天。 

// Example 

var date = new Date('10/20/2012 14:30:00'); 

Ext.Date.getLastDateOfMonth(date); //返回 Wed Oct 31 2012 00:00:00 GMT+0800 (中國標準時間) 

// Ext.Date.getLastDayOfMonth(date) 獲取date所在月份最后一天的星期 

// @param  {Date}  date 日期。 

// @return {Number}    返回所在月份最后一天的星期,取值范圍0~6。 

// Example 

var date = new Date('10/20/2012 14:30:00'); 

Ext.Date.getLastDayOfMonth(date); //返回 3,表示星期三 

// Ext.Date.getWeekOfYear(date) 獲取date所在年中的第幾個星期 

// @param  {Date}  date 日期。 

// @return {Number}    返回所在年中的第幾個星期,取值范圍1~53。 

// Example 

var date = new Date('10/20/2012 14:30:00'); 

Ext.Date.getWeekOfYear(date); //返回 42 

// Ext.Date.isLeapYear(date) date所在年份是否閏年 

// @param  {Date}   date 日期。 

// @return {Boolean}    true表示閏年,false表示平年。 

// Example 

var date = new Date('10/20/2012 14:30:00'); 

Ext.Date.isLeapYear(date); //返回 true 

// Ext.Date.now()   返回當前時間到1970年1月1日的毫秒數。 

//          在chrome、ie9和ie10中已經有Date.now()實現相同的功能。 

// @return {Number} 返回毫秒數。 

// Example 

var timestamp = Ext.Date.now(); //1351666679575 

var date = new Date(timestamp); //Wed Oct 31 2012 14:57:59 GMT+0800 (中國標準時間) 

// Ext.Date.parse(input, format, strict) 根據輸入的字符串創建日期,Date.parse()有類似的功能。 

// @param {String}  input  日期字符串。 

// @param {String}  format 日期格式。 

// @param {Boolean} strict 驗證input字符串的有效性,默認是false。 

// @param {Date}       返回創建的日期。 

// Example 

var input = '2012年10月31日 14:30:00'; 

var format = 'Y年m月d日 H:i:s'; 

var date = Ext.Date.parse(input, format, true); //Wed Oct 31 2012 14:30:00 GMT+0800 (中國標準時間)

實例:實現帶week(星期)的日期選擇控件

1.問題:

是否使用了Ext JS 就可以完美的解決 星期的問題呢?

在本系列的第一篇就有說到, Ext 的datepicker 并不能看到星期, 需要自己去擴展。

但是, 擴展的時候就有一個問題了:

Javascript 語言的Date對象每周是從星期天開始。

而Ext JS的getWeekOfYear這個方法卻又是遵循 ISO-8601, 每周是從星期一開始的。(其他的方法又有不是遵循此標準的, Ext JS混合了不同的日期時間表示標準)。

Ext.Date.getWeekOfYear 這個方法的返回值是 1- 53 之間的數。

這樣的話, 就會出現一些問題:

Ext js 的日期顯示控件的顯示是從星期天開始: (S M T W T F S (星期天 星期一 星期二  .. 星期六))

但是, 通過選中的時間獲取星期時卻又是從星期天開始。導致:

每個星期天的星期會小1 (比如2013/08/18 , 星期天, 應該是34周,但是通過這個方法卻是算成上一周的結尾 , 33 周)

date = new Date("2013/08/18");

var week = Ext.Date.getWeekOfYear(date);

alert("week="+week);

Ext Js 日期控件默認顯示了 42天, 這樣的話,在兩個年交互的地方就會出現問題

是當年顯示 53 周呢? 還是下一年的第一周。

2.解決方案:

結合js 的Date 對象和 Ext js的Ext.Date, 實現獲取星期字串。

每周以星期天為第一天

每年的周數從(1-52), 如果超過52 周,算到下一年的第一周。 比如2013/12/29 為 2013年的53周, 算到 2014年的第一周

返回 “W1334” 這樣的周的格式

/*

 * return as W1334()2013/08/20

 * 1. if sunday==> week = week+1

 * getWeekOfYear(Ext use ISO-8601,week begin monday)

 * js Date(week begin sunday)

 * 2. if week > 52==> year = year +1; week = week - 52;

 * 3. if month ==11(12 month) and week <2 ==> year = year +1;

 */

function getWeekStrOfDate(date)

{

  var weekStr = null;

  if(date!=null)

  {

    weekStr = "W";

    var dateYear = date.getFullYear();

    var dateWeek = Ext.Date.getWeekOfYear(date);

    var firstDayOfMonth = Ext.Date.getFirstDayOfMonth(date);

    var day = date.getDate();

    var month = date.getMonth();

    //weekday 0-6

    var weekday = date.getDay();

    if(weekday===0)

    {

      dateWeek++;

    }

    // week>52 ==> year +1     

    if(month==11)

    {

      if(dateWeek>52)

      {    

        dateYear += 1;

        dateWeek -= 52;

      }else if(dateWeek<2){

        dateYear += 1;

      }

    }    

    var yearStr = dateYear.toString();

    yearStr = yearStr.substring(2,4);

    var dateWeekStr = dateWeek.toString();

    if(dateWeekStr.length<2)

    {

      dateWeekStr = "0" + dateWeekStr;

    }    

    weekStr += yearStr;

    weekStr += dateWeekStr;   

  }

  return weekStr;

}

更多信息請查看網絡編程
由于各方面情況的不斷調整與變化,易賢網提供的所有考試信息和咨詢回復僅供參考,敬請考生以權威部門公布的正式信息和咨詢為準!

2026上岸·考公考編培訓報班

  • 報班類型
  • 姓名
  • 手機號
  • 驗證碼
關于我們 | 聯系我們 | 人才招聘 | 網站聲明 | 網站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點 | 投訴建議
工業和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網安備53010202001879號 人力資源服務許可證:(云)人服證字(2023)第0102001523號
云南網警備案專用圖標
聯系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關注公眾號:hfpxwx
咨詢QQ:1093837350(9:00—18:00)版權所有:易賢網
云南網警報警專用圖標
中文字幕免费精品_亚洲视频自拍_亚洲综合国产激情另类一区_色综合咪咪久久
国产精品乱码| 永久免费视频成人| 亚洲欧美精品在线观看| 狠狠色丁香婷综合久久| 国产日本欧美一区二区三区| 亚洲区欧美区| 一区二区三区视频在线看| 麻豆精品91| 国产精品综合不卡av| 亚洲欧美日韩精品久久亚洲区 | 欧美**人妖| 亚洲视频一二| 今天的高清视频免费播放成人| 免费人成网站在线观看欧美高清| 久久精品日韩| 国产精品福利在线| 亚洲精品日产精品乱码不卡| 激情欧美一区二区三区在线观看| 国产综合久久久久久鬼色| 国内成人精品一区| 亚洲看片一区| 欧美激情一区二区三区在线| 亚洲国产精品久久久久秋霞蜜臀 | 欧美日韩国产成人高清视频| 国产精品a久久久久久| 亚洲欧洲一区二区三区在线观看| 欧美高清在线观看| 日韩视频免费看| 欧美日韩综合另类| 亚洲小说欧美另类社区| 国产精品夫妻自拍| 久久福利电影| 亚洲国产精品传媒在线观看| 欧美成人按摩| 亚洲视频电影图片偷拍一区| 国产欧美精品日韩| 久久中文精品| 在线中文字幕日韩| 国产亚洲观看| 欧美激情精品久久久| 亚洲午夜在线观看| 国产一区二区三区四区在线观看| 一区二区三区视频在线播放| 国产精品午夜在线| 狠狠爱综合网| 亚洲男女自偷自拍图片另类| 亚洲国产精品成人精品| 亚洲经典自拍| 国产精品久久久久国产精品日日| 国产精品久久久久永久免费观看| 狠狠操狠狠色综合网| 一区二区三区 在线观看视频| 久久久999成人| 亚洲激情在线激情| 亚洲永久免费av| 国产日韩欧美一区| 美日韩在线观看| 亚洲一区二区三区欧美| 国产一区二区中文字幕免费看| 免费日韩精品中文字幕视频在线| 亚洲午夜小视频| 在线观看亚洲一区| 亚洲调教视频在线观看| 国产一区再线| 欧美日韩免费一区二区三区视频 | 在线观看91精品国产麻豆| 欧美精品一区二区久久婷婷| 欧美一区二区黄色| 欧美午夜欧美| 久久久伊人欧美| 亚洲综合另类| 亚洲欧洲日本专区| 国产真实精品久久二三区| 欧美日韩国产不卡在线看| 久久夜精品va视频免费观看| 亚洲午夜激情网页| 91久久精品国产91久久性色tv| 国产区二精品视| 国产精品mv在线观看| 欧美成人免费在线| 久久福利一区| 亚洲自拍都市欧美小说| 国产午夜精品全部视频播放| 欧美激情第8页| 久久久综合视频| 欧美一级淫片播放口| 一本一本久久a久久精品综合麻豆 一本一本久久a久久精品牛牛影视 | 亚洲天堂男人| 亚洲电影在线观看| 国产日韩一区欧美| 国产精品婷婷午夜在线观看| 欧美18av| 久久综合网络一区二区| 久久成人这里只有精品| 亚洲天堂偷拍| 99在线精品视频在线观看| 久久福利精品| 国产一区二区三区高清播放| 久久伊人一区二区| 欧美一区二区精品| 亚洲精品字幕| 亚洲国产日韩一区| 欧美成人一品| 国产精品羞羞答答| 欧美日韩hd| 欧美激情精品久久久六区热门| 久久精品女人天堂| 在线观看亚洲| 国产精品国产三级国产专播品爱网 | 国产精品va在线| 欧美xxx成人| 欧美一区在线看| 欧美在线视频一区二区三区| 国产欧美日韩在线视频| …久久精品99久久香蕉国产| 国产精品免费一区二区三区在线观看| 亚洲精品护士| 久久久免费精品视频| 国产一区二区在线观看免费| 欧美午夜片在线免费观看| 欧美日韩视频不卡| 欧美日韩成人免费| 欧美伊人久久大香线蕉综合69| 亚洲一区二区三区在线看| 一区二区电影免费观看| 亚洲精品欧美精品| 99精品国产高清一区二区| 亚洲看片一区| 一级成人国产| 亚洲一区二区三区免费视频| 亚洲午夜电影| 亚洲永久免费| 久久噜噜噜精品国产亚洲综合| 久久偷看各类wc女厕嘘嘘偷窃| 久久在线免费观看视频| 久久一区视频| 久久夜色精品国产| 欧美精品乱码久久久久久按摩| 免费不卡在线观看av| 欧美电影在线播放| 欧美日本三区| 欧美久久在线| 欧美视频一区二区三区在线观看 | 亚洲黑丝一区二区| 亚洲精品之草原avav久久| 日韩午夜三级在线| 亚洲午夜电影网| 久久久夜精品| 欧美大尺度在线| 免费观看亚洲视频大全| 亚洲一品av免费观看| 午夜激情综合网| 亚洲福利国产| 国产日韩欧美制服另类| 国产亚洲a∨片在线观看| 国产伊人精品| 一区二区欧美亚洲| 欧美在线不卡视频| 亚洲欧美日韩视频一区| 久久九九久精品国产免费直播 | 亚洲三级国产| 午夜欧美精品久久久久久久| 久久综合免费视频影院| 欧美女人交a| 女主播福利一区| 亚洲免费视频中文字幕| 欧美国产另类| 欧美日韩国产综合视频在线观看 | 一区二区三区精品国产| 国产精品jizz在线观看美国| 国产亚洲精品一区二555| 在线精品国精品国产尤物884a| 一级日韩一区在线观看| 久久只有精品| 国产精品爽爽爽| 亚洲人永久免费| 久久精品人人爽| 欧美日韩美女| 伊人男人综合视频网| 亚洲一区二区3| 男女av一区三区二区色多| 国产美女搞久久| 99re视频这里只有精品| 久久精品一区四区| 国产精品理论片| 亚洲精品在线视频观看| 欧美在线一区二区| 国产精品视频自拍| 欧美电影免费观看网站| 国产在线拍偷自揄拍精品| 亚洲三级免费| 久久亚洲综合色| 国产日本欧美一区二区三区在线 | 久久精品国产清高在天天线 | 9久re热视频在线精品| 理论片一区二区在线| 国产精品视频网| 一区二区三区四区五区精品视频| 欧美国产日韩免费| 国内精品久久久久久久影视麻豆 |