开始ExtJS之旅:5.ExtJS对原有JavaScript对象的扩展

5  ExtJS对原有JavaScript对象的扩展

    为了实现更强大的功能也为了更好的与ExtJS整个框架的一起工作,ExtJS对JavaScript中的Array、Date、Function、Number和String 5个类进行了扩展,可以理解为Java中的包装类,是对JavaScript原生对象的包装。
1.  Array
除开原生Array对象的方法外,ExtJS扩展的Array对象还增加了表2-1所示的方法。


表2-1  Array类型扩展方法列表

方法名 说明
indexOf( Obje
ct o ) : Number
判断指定对象是否存在于数组中,如果存在则返回对应的索引,如果不存在则返回-1
参数说明:
o
如果不存在则返回-1
remove( Objec
t o ) : Array
从数组中删除指定对象。
参数说明:
o,需要进行删除的对象。


2.  Date
除开原生Date对象的相关方法外,扩展的Date对象还增加了表2-2所示的方法。


表2-2  Date类型扩展方法列表

 方法名  说明
Date.getMonthNumber( String
name ) : Number
静态方法,根据月份名称返回从0开始的月份数值。
参数说明:
name ,月份名称。
Date.getShortDayName( Num
ber day ) : String
静态方法,根据星期数返回对应的星期名称,0对应星期日。
参数说明:
day,星期数。
Date.getShortMonthName( N
umber month ) : String
静态方法,根据月份数返回对应的月份名称。
参数说明:
month,月份数。
Date.parseDate( String input,
String format ) : Date
静态方法,根据指定的日期格式解析日期字符串,返回对应的日期
对象。需要注意的是该方法已标准的日历格式进行解析,即
1月份
对应数字1而不是数字0
参数说明: input,将被解析的字符串。format ,字符串日期格式。
add( String interval, Number
value ) : Date
一个方便的进行日期计算的方法,该方法不会修改当前日期对象而
是新建并返回一个包含计算结果的新的日期对象。
参数说明:interval,有效的日期间隔枚举值。Value,向当前日期上
增加的总数。
between( Date start, Date
end ) : Boolean
检查当前日期表示的时间是否在指定的开始日期和结束日期之内。
参数说明:
start,开始日期。End,结束日期。
clearTime( Boolean clone ) :
Date
清除当前日期对象的时间信息。
参数说明:
clone,为true则创建一个当然日期对象的克隆,然后清
除克隆对象的时间信息并将克隆对象返回,当前日期对象不受影响,
默认为false
clone() : Date 创建并返回一个当前日期对象的克隆。
format( String format ) : String 按指定的格式化字符串格式化当前日期,返回指定格式的日期字符
串。
参数说明:format ,日期格式字符串。
getDayOfYear() : Number 取得当前日期所在年中的天数,范围从0 364 (闰年为365)。例
11日的返回值为0,闰年的1231日返回值为365
getDaysInMonth() : Number 取得当前日期对象所在月的总天数。
getElapsed( [Date date] ) :
Number
取得当前日期到指定日期之间经过的时间(以毫秒为单位)。
getFirstDateOfMonth() : Date 取得当前日期所在月份第一天的日期对象。
getFirstDayOfMonth() :
Number
取得当前日期所在月份第一天的星期数,0代表星期日。
getGMTOffset( Boolean
colon ) : String
取得当期日期所在时区与格林尼治标准时间的时差。
参数说明:
colon true表示在时间和分钟之间加冒号,默认值为false
getLastDateOfMonth() : Date 取得当前日期所在月份最后一天的日期对象。
getLastDayOfMonth() :
Number
取得当前日期所在月份最后一天的星期数,0代表星期日。
getSuffix() : String 取得当前日期英文后缀。
getTimezone() : String 取得时区。
getWeekOfYear() : Number 取得当前日期是一年中的第几个星期,范围从153
isLeapYear() : Boolean 判断当前日期所在年是不是闰年。

 

3.  Function
除开原生Function对象的方法外,扩展的Function对象还增加了表2-3所示的方法。


表2-3  Function类型扩展方法列表

方法名 说明
createCallback() : Function 创建当前函数的回调函数,允许将多个参数绑定到一个函数。
示例:
function func1(name){
alert(name);
}
//将变了'tom'绑定到func1函数
var func2 = func1.createCallback('tom');
func2();
createDelegate( [Object obj],
[Array args]
, [Boolean/Number
appendArgs]
) : Function
创建当前函数的代理函数。
参数说明:
obj,(可选)该对象将作为代理函数的作用域。Args,(可
选)参数数组。
appendArgs,(可选)如果为true,args将附加在参数
列表之后,如果是数值,args将在参数列表的appendargs位置插入。
createInterceptor( Function
fcn, [Object scope] ) : Function
创建当前函数的拦截函数。
参数说明:
fcn,拦截函数,该函数将在原始函数调用前被调用,该函
数返回false则原函数将不会被执行。Scope,(可选)拦截函数的作用
域,默认为原函数的作用域或window
createSequence( Function fcn,
[Object scope]
) : Function
创建当前函数的组合函数。原函数调用后会继续调用组合函数,但返回
值依然是原始函数的返回值。
参数说明:fcn,组合函数。Scope,(可选)组合函数的执行范围
defer( Number millis, [Object
obj]
, [Array args],
[Boolean/Number
appendArgs]
) : Number
延时执行函数。
参数说明:
millis,延时时间(毫秒)。Obj,(可选)函数的作用域。
Args
,(可选)参数数组。appendArgs,(可选)如果为true,args
附加在参数列表之后
,如果是数值,则args将在参数列表的appendargs位置插入。

4.  Number
除开原生Number对象的方法外,扩展的Number对象还增加了表2-4所示的方法。


表2-4  Number类型扩展方法列表

方法名 说明
constrain( Number min, Number
max ) : Number
判断当前数值是否在指定的范围之内,如果在范围之内则
返回当前值,如果小于最小值则返回最小值,如果大于最
大值则返回最大值。注意:该方法不会修改当前值。
参数说明:min,最小值。max ,最大值。

5.  String
除开原生String对象的方法外,扩展的String对象还增加了表2-5所示的方法。


表2-5  String类型扩展方法列表

方法名 说明
escape( String string ) : String 静态方法,将string中的'\替换为\' \\
format( String string, String value1,
String value2 ) : String
静态方法,用于格式化字符串,例如:
String.format('{1}{0}{2}','-','tom','jack');
输出结果为:tom-jack
参数说明:string,需要进行格式化的字符串。value1,用于替换{0}value2,用于替换{1}。依此类推,可以接受任意多个参数。
leftPad( String string, Number size,
[String char]
) : String
静态方法,在字符串左侧填充指定字符,这个方法对于标准化数字或者日期格式非常有用。
参数说明:string,原始字符串。Size,返回字符串的总长度。Char,(可选)用于填充原始字符串的字符,默认为" "
 toggle( String value, String other ) :
String
 一个工具方法,用于方便的在两个字符串中进行切换,当字
符串与value相同时返回other,不同时返回value,注意该
方法不会修改原始字符串。
例如:'123'.toggle('123','0') 返回'0'
'1234'.toggle('123','0') 返回'123'
参数说明:Value,与当前字符串进行对比的值Other,当
原始字符串与value相等时返回的值
 trim() : String  去掉字符串开头和结尾位置的空格。


 

posted @ 2010-05-07 23:55  貔貅  阅读(444)  评论(0编辑  收藏  举报