Ext Js对一些javaScript的内置方法进行扩展,使得开发更加方便
1.为Array扩展工具的方法
<script>
var arr=[10,20,30,40,50];
//计算数组元素总和
document.writeln("数组总和为:"+Ext.Array.sum(arr)+"</br>");
//计算数组平均数
document.writeln("计算数组平均数:"+Ext.Array.mean(arr)+"</br>");
//在数组中插入一个新数组
Ext.Array.insert(arr,2,["java","ajax"]);
//新数组
document.writeln("新数组:"+arr+"</br>");
var arr1=["小茗","小红","小华"];
var arr2=["小刚","小红","小童"];
//计算两个数组中的相同数值
document.writeln("相同值:"+Ext.Array.intersect(arr1,arr2)+"</br>");
//两个数组的并集
document.writeln("并集:"+Ext.Array.union(arr1,arr2)+"</br>");
</script>
2.为Date扩展工具方法
<script>
//创建当前日期
var d1=new Date();
//格式化日期对象
document.writeln("d1格式化结果:"+Ext.Date.format(d1,'Y年m月d日')+"</br>");
//计算时间差
document.writeln("d1是否在指定时间差范围内:"+
Ext.Date.between(d1,new Date(2010,7,15,22,43),new Date(2014,10,20))+"</br>");
</script>
3.为Function扩展工具方法
<script>
//创建一个延迟函数
var fn=Ext.Function.createDelayed(function()
{
alert("函数被调用!");
},2000);
//调用该函数
fn();
var user={
name:"武松",
sayHi:function()
{
document.writeln(this.name+"向你问好</br>")
}
}
//在user的sayHi方法执行之后插入行为
Ext.Function.interceptAfter(user,"sayHi",
function()
{
document.writeln("问好之前的行为!</br>");
}
);
user.sayHi();
</script>
说明:虽然在开始就执行fn()函数,但是由于创建的是延迟函数,所以最后执行弹框。
4.为NUmber扩展工具方法
<script>
document.writeln("20截取10-30范围:"+Ext.Number.constrain(20,10,30)+"</br>");
document.writeln("35截取10-30范围:"+Ext.Number.constrain(35,10,30)+"</br>");
document.writeln("字符串'123'转为数值:"+Ext.Number.from("123",20)+"</br>");
document.writeln("字符串'abc'转为数值:"+Ext.Number.from("abc",20)+"</br>");
document.writeln("距离23最近的7的倍数(必须在10-30之间):"+Ext.Number.snap(27,7,10,30)+"</br>");
document.writeln("保留两位小数:"+Ext.Number.toFixed(34.1254,2)+"</br>");
</script>
5.为Object扩展工具方法
<script>
var user={
name:"武松",
age:500
}
//调用each遍历每个key和value
Ext.Object.each(user,function(key,value,myself)
{
document.writeln(key+"-->"+value+"</br>");
});
//将对象转换为查询字符串
document.writeln("user转换查询字符串为:"+Ext.Object.toQueryString(user)+"</br>");
//将查询字符串转为对象
var dog=Ext.Object.fromQueryString("name=Garfile&color=yellow");
//获取指定对象所有的key
document.writeln("dog对的所有key:"+Ext.Object.getKeys(dog)+"</br>");
//获取指定对象的value
document.writeln("dog对的所有key:"+Ext.Object.getValues(dog)+"</br>");
</script>
6.为String扩展的工具方法
<script>
//对字符串的首字母大写
document.writeln("i love extjs 首字母大写"+Ext.String.capitalize("i love extjs")+"</br>");
//返回html字符串的源码
document.writeln("html源码:"+Ext.String.htmlEncode("<b>javaScript</br>")+"</br>");
//字符串重复3次
document.writeln("java字符串重复3次"+Ext.String.repeat("java",3,"/")+"</br>");
//字符串模板替换
document.writeln(Ext.String.format("新华图书馆有{0}{1}</br>{2}</br>",
"三国","水浒","红楼梦"));
//对字符串进行补长
document.writeln("javaScript补偿15个字符:"+Ext.String.leftPad("javaScript",15,"-"));
</script>
7.对JSON支持
<script>
var user={
name:"武松",
age:50
}
//将对象转为Json
document.writeln("user转为json:"+Ext.JSON.encode(user)+"</br>");
var str='['+
'{"name":"武松","age":"50"},'+
'{"name":"松江","age":"30"}'+
']'
//将Json转为数组
var arr=Ext.JSON.decode(str);
document.writeln("数组长度:"+arr.length)
</script>