Ext.Array 方法
1. Ext.Array.clean(arr); 过滤数组中的空元素
var arr = [1,"",2,"",3]; Ext.clean(arr); // [1,2,3]
2. Ext.Array.clone(arr);可以克隆数组,对象,dom节点和日期数据,以避免保持旧的指向
var arr= [1,,2,3]; Ext.clone(arr)
3.Ext.Array.contains(arr,items); 检查此数组是否包含指定元素
var arr = ["1","2","3"]; Ext.Array.contains(arr,'1'); //true Ext.Array.contains(arr,1); //false
4.Ext.Array.difference(arrA,arrB);对比数组之间的差异,由存在于arrA中而不再arrB中的元素,组成新数组
var arrA = [1,2,3,4,5]; var arrB = [2,4]; Ext.Array.difference(arrA,arrB); //[1,3,5]
5.Ext.Array.every(arr,fn,scope);遍历数组元素,执行指定函数,返回false则终止程序
Ext.Array.every(array,function(str,index,array){ //遍历数组 第二个参数执行回调函数 (当前元素,当前索引,当前数组(array)) 指定作用域 return false; //返回false 立即终止程序 });
6.Ext.Array.filter(arr.fn.scope);遍历数组元素,执行指定函数,返回true的元素组成新数组
var arr = [1,2,3,4,5,6,-1] var newArr = Ext.Array.filter(arr,function (item){ if(item>0){ return true; }else{ return false; } },this); // newArr [1,2,3,4,5,6]
7.Ext.Array.flatten(arr);将多维数组平铺为1维数组
var arr = [1,2,3,[4,5],[6,[7,8]]]; Ext.Array.flatten(arr); //[1,2,3,4,5,6,7,8]
8.Ext.Array.forEach(arr,fn,scope);迭代数组元素,在每个元素上都调用回调函数,不可通过返回flase来终止迭代,执行效率高于each方法
//单纯遍历数组,执行回调函数 var arr = [1,2,3] Ext.Array.forEach(arr,function(item){ console.log(item) })
9.Ext.Array.from(arr,newReference);转换定值为数组,如果为undefined 或 null 则返回空数组 本身为数组返回数组 可迭代返回数组拷贝 单值返回值包含该值的数组 newReference 默认为false, true则返回数组的克隆
var arr1 = "1";
var arr2 = undefined;
Ext.Array.from(arr1 ,true); //[1]
Ext.Array.from(arr2 ,true); //[]
10.Ext.Array.include(arr,item);向数组尾部追加一个数组中不存在的指定值
var arr = [1,2,3]; Ext.Array.include(arr,4); //arr [1,2,3,4] Ext.Array.include(arr,3); //arr [1,2,3,4]
11.Ext.Array.indexOf(arr,item,from);获取指定值在数组中的索引位置
var arr = [1,2,3,4]; Ext.Array.indexOf(arr,1,0); //从位置0开始获取1的索引位置 位置:0 Ext.Array.indexOf(arr,1,2); //从位置2开始获取1的索引位置 位置:-1 没有查找到
12.Ext.Array.intersect(arr); 合并多个数组到唯一的数组中,数组元素唯一
var arr = [1,2,3,4,3,2,1]; Ext.Array.intersect(arr); //[1,2,3,4]
13.Ext.Array.map(arr,fn,scope);遍历数组并且在每个元素上执行回调函数,返回由回调函数执行结果组成的数组
var arr = [1,2,3,4,5]; Ext.Array.map(arr,function(item){ if(item>2){ return item; }else{ return ""; } }) //运行结果:["","",3,4,5]
14.Ext.Array.max(ar,fn);//返回元素中最大的数值,fn 可选的比较函数
var arr = [1,2,3,4,5]; Ext.Array.max(arr); //5
15.Ext.Array.mean(arr);//返回数组元素的平均值
var arr1 = [1,2,3,4,5]; var arr2 = [1,2,3,4]; Ext.Array.mean(arr1); //3 Ext.Array.mean(arr12); //2.5
16.Ext.Array.merge(arr1,arr2);//合并多个数组
var arr1 = [1,2,3,4]; var arr2 = [1,2,3,4,5,6]; Ext.Array.merge(arr1,arr2); //[1, 2, 3, 4, 5, 6]
17.Ext.Array.min(arr,fn);//返回元素中最小的数值,fn 可选的比较函数
var arr = [1,2,3,4,5]; Ext.Array.min(arr); //1
18.Ext.Array.pluck(arr,name);//采集数组元素中指定的属性值,并返回这些值组成的数组
var arr = [{a:1},{a:2},{b:3},{a:[1,2,3]}]; var array = Ext.Array.pluck(arr,a); //["1", "2", undefined, Array[3]] Ext.Array.clean(array); //["1","2",Array[3]]
19.Ext.Array.remove(arr,item);//从数组中移除指定的元素
var arr = [1,2,3,4,5]; Ext.Array.remove(arr,2); //[1,3,4,5]
20.Ext.Array.some(arr.fn.scope);//遍历数组并每个元素上执行回调函数,回调函数返回真值则立即返回,否则返回false
var arr = [1,2,3,4,5]; Ext.Array.some(arr,function(item){ console.log(arr); //1 2 3 return true;结束此程序 if(arr == 3){ return true; } })
21.Ext.Array.sort(arr,fn);排序数组元素,默认按字母顺序升序排列,fn 可选的排序函数
var arr = ["a","c","b"]; Ext.Array.sort(arr); //["a", "b", "c"]
22.Ext.Array.sum(arr);返回素组元素的和值
var arr = [1,2,3,4,5]; Ext.Array.sum(arr); //15
23.Ext.Array.toArray(arr,start,end);
var arr1 = "Hello World"; var arr2 = [1,2,3,4,5,6]; Ext.Array.toArray(arr1); //["H", "e", "l", "l", "o", " ", "W", "o", "r", "l", "d"] Ext.Array.toArray(arr2,1,4); //[2, 3, 4]
24.Ext.Array.union; 同merge,是merge方法的别名;
25.Ext.Array.unique(arr);获取具有唯一元素的新数组
var arr = [1,2,3,3,2,1]; Ext.Array.unique(arr); //[1,2,3]