Ext對基本類型的擴(kuò)展 ext,extjs,format
更新時(shí)間:2010年12月25日 18:05:29 作者:
Ext對基本類型的擴(kuò)展 ext,extjs,format,學(xué)習(xí)extjs的朋友可以參考下。
1. Array
indexOf(Object o):Number 方法
remove(Object o):Array 方法
2. Date
Javascript對日期時(shí)間的操作是不太方便的,而Ext在此基本上加入了比較多的擴(kuò)展。比較重要的有:
add(String interval,Number value):Date 方法
其中interval表示要加入的周期,有效的字符串為
ms--------表示毫秒
s-----------表示秒
mi---------表示分鐘
h----------表示小時(shí)
d---------表示天
mo--------表示月
y---------表示年
這個(gè)方法是通過封裝Date.setxxx方法實(shí)現(xiàn)的。 另外,該函數(shù)不會(huì)改變原始日期的值,則是返回一個(gè)新的日期對象作為結(jié)果。
format(String format):String 方法
基本上,它的用法類似于.net中的日期格式化函數(shù)。具體的格式請參見Ext的API。通過閱讀它的源碼,我發(fā)現(xiàn)第次調(diào)用該函數(shù)時(shí),它首先判斷指定的格式是否曾經(jīng)調(diào)用過,如果沒有調(diào)用過,則為該格式動(dòng)態(tài)生成一個(gè)相應(yīng)的格式化函數(shù),并緩存起來。這樣做可以明顯提高第二次調(diào)用的速度。
3. Function
createCallback 方法
為函數(shù)生成回調(diào)用方法,這個(gè)函數(shù)怎么起作用呢?
function add(x,y){
return x+y;
}
var add2 = add.createCallback(10,20);
alert(add2());
createDelegate(scope,args,append) 方法
這個(gè)方法的作用和createCallback的作用基本相同,不同的地方在于它可以指定調(diào)用原始函數(shù)的上下文對象,而createCallback方法則始終使用window作為函數(shù)調(diào)用的上下文。
createInterceptor(fn,[scope])方法
這個(gè)方法的作用是為函數(shù)創(chuàng)建一個(gè)攔截器,在調(diào)用原始函數(shù)之前先調(diào)用fn,如果fn返回false,則不調(diào)用原始函數(shù)。scope參數(shù)指定了調(diào)用fn函數(shù)的上下文,如果未指定,則和原始函數(shù)的上下文相同或者為window對象。
createSequence( Function fn, [Object scope] )
這個(gè)方法組合了原始函數(shù)和fn,最終的結(jié)果是先調(diào)用原始函數(shù),然后再用同樣的參數(shù)調(diào)用fn函數(shù),最返的返回值是原始函數(shù)的返回值。
defer( Number millis, [Object scope], [Array args], [Boolean/Number appendArgs] )
這個(gè)方法能延時(shí)調(diào)用原始函數(shù)。
var clock = function(){
var d = new Date();
alert(d.toLocaleTimeString());
}
clock();
clock.defer(10000);
4. Number
constrain( Number min, Number max )
不解釋,你懂的。
5. string
format( String string, String value1, String value2… ) : String
它的功能和.net中的格式化基本相同,但比較簡單,不支持在{0:d}這樣的寫法,只支持{0}這樣的寫法。看了它的源代碼,超簡單。
format : function(format){
var args = Ext.toArray(arguments, 1);
return format.replace(/\{(\d+)\}/g, function(m, i){
return args[i];
});
}
基本上,這是一個(gè)很有用的函數(shù),可以讓我們少寫拼寫字符串的代碼,那種代碼真的很難看懂。
trim() : String
還算是有點(diǎn)用處,也不解釋。
indexOf(Object o):Number 方法
remove(Object o):Array 方法
2. Date
Javascript對日期時(shí)間的操作是不太方便的,而Ext在此基本上加入了比較多的擴(kuò)展。比較重要的有:
add(String interval,Number value):Date 方法
其中interval表示要加入的周期,有效的字符串為
ms--------表示毫秒
s-----------表示秒
mi---------表示分鐘
h----------表示小時(shí)
d---------表示天
mo--------表示月
y---------表示年
這個(gè)方法是通過封裝Date.setxxx方法實(shí)現(xiàn)的。 另外,該函數(shù)不會(huì)改變原始日期的值,則是返回一個(gè)新的日期對象作為結(jié)果。
format(String format):String 方法
基本上,它的用法類似于.net中的日期格式化函數(shù)。具體的格式請參見Ext的API。通過閱讀它的源碼,我發(fā)現(xiàn)第次調(diào)用該函數(shù)時(shí),它首先判斷指定的格式是否曾經(jīng)調(diào)用過,如果沒有調(diào)用過,則為該格式動(dòng)態(tài)生成一個(gè)相應(yīng)的格式化函數(shù),并緩存起來。這樣做可以明顯提高第二次調(diào)用的速度。
3. Function
createCallback 方法
為函數(shù)生成回調(diào)用方法,這個(gè)函數(shù)怎么起作用呢?
復(fù)制代碼 代碼如下:
function add(x,y){
return x+y;
}
var add2 = add.createCallback(10,20);
alert(add2());
createDelegate(scope,args,append) 方法
這個(gè)方法的作用和createCallback的作用基本相同,不同的地方在于它可以指定調(diào)用原始函數(shù)的上下文對象,而createCallback方法則始終使用window作為函數(shù)調(diào)用的上下文。
createInterceptor(fn,[scope])方法
這個(gè)方法的作用是為函數(shù)創(chuàng)建一個(gè)攔截器,在調(diào)用原始函數(shù)之前先調(diào)用fn,如果fn返回false,則不調(diào)用原始函數(shù)。scope參數(shù)指定了調(diào)用fn函數(shù)的上下文,如果未指定,則和原始函數(shù)的上下文相同或者為window對象。
createSequence( Function fn, [Object scope] )
這個(gè)方法組合了原始函數(shù)和fn,最終的結(jié)果是先調(diào)用原始函數(shù),然后再用同樣的參數(shù)調(diào)用fn函數(shù),最返的返回值是原始函數(shù)的返回值。
defer( Number millis, [Object scope], [Array args], [Boolean/Number appendArgs] )
這個(gè)方法能延時(shí)調(diào)用原始函數(shù)。
復(fù)制代碼 代碼如下:
var clock = function(){
var d = new Date();
alert(d.toLocaleTimeString());
}
clock();
clock.defer(10000);
4. Number
constrain( Number min, Number max )
不解釋,你懂的。
5. string
format( String string, String value1, String value2… ) : String
它的功能和.net中的格式化基本相同,但比較簡單,不支持在{0:d}這樣的寫法,只支持{0}這樣的寫法。看了它的源代碼,超簡單。
復(fù)制代碼 代碼如下:
format : function(format){
var args = Ext.toArray(arguments, 1);
return format.replace(/\{(\d+)\}/g, function(m, i){
return args[i];
});
}
基本上,這是一個(gè)很有用的函數(shù),可以讓我們少寫拼寫字符串的代碼,那種代碼真的很難看懂。
trim() : String
還算是有點(diǎn)用處,也不解釋。
相關(guān)文章
EXTJS記事本 當(dāng)CompositeField遇上RowEditor
用RowEditor作批量編輯器時(shí),遇到一個(gè)問題,想要在Roweditor中使用三個(gè)下拉列表組成級聯(lián)式選擇控件2011-07-07
ExtJS 2.0實(shí)用簡明教程 之Border區(qū)域布局
Border布局由類Ext.layout.BorderLayout定義,布局名稱為border。2009-04-04
Ext JS 4實(shí)現(xiàn)帶week(星期)的日期選擇控件(實(shí)戰(zhàn)一)
有一些日期選擇的需求是要看到星期,就是日期中的哪一天是這一年的第幾周,遺憾的是Ext js 并沒有提供這樣的配置,下面為大家分享下理想的解決方法2013-08-08
Extjs Ext.MessageBox.confirm 確認(rèn)對話框詳解
顯示一個(gè)確認(rèn)對話框,用來代替JavaScript標(biāo)準(zhǔn)的confirm()方法,具有兩個(gè)按鈕“是”和“否”如果為其提供一個(gè)回調(diào)函數(shù),則該函數(shù)將在單擊按鈕后被調(diào)用(包括右上角的推出按鈕),所單擊按鈕的id將被作為唯一的參數(shù)傳遞到回調(diào)函數(shù)中。2010-04-04
ExtJs GridPanel簡單的增刪改實(shí)現(xiàn)代碼
ExtJs GridPanel中實(shí)現(xiàn)增刪改效果的代碼,需要的朋友可以參考下。2010-08-08
extjs ColumnChart設(shè)置不同的顏色實(shí)現(xiàn)代碼
extjs為ColumnChart設(shè)置不同的顏色想必有很多朋友還是比較陌生的吧,接下來為大家詳細(xì)介紹下具體設(shè)置代碼,感興趣的朋友可以參考下哈2013-05-05
extjs每個(gè)組件要設(shè)置唯一的ID否則會(huì)出錯(cuò)
extjs每個(gè)組件要設(shè)置唯一的ID,否則會(huì)造成各種錯(cuò)誤。EXTJS基本上是靠ID來識(shí)別組件的2014-06-06

