数组: var colors = new Array();

数组的声明:

 1  //利用构造函数创建数组:
 2         var colors = new Array();
 3         var colors = new Array(20);
 4         var colors = new Array("red", "blue", "green");
 5 
 6         //字面量表示法创建数组
 7         var colors = ["red", "blue", "green"];//创建一个包含三个字符串的数组
 8         var names = [];//创建一个空数组
 9         var values = [1, 2, ];//不要这样,这样会创建一个2或3项的数组
10         var options = [,,,,,,];//不要这样,这样会创建一个5或6项的数组

shift:删除原数组第一项,并返回删除元素的值;如果数组为空则返回undefined 

1 var a = [1,2,3,4,5]; 
2 var b = a.shift(); //a:[2,3,4,5]   b:1 

unshift:将参数添加到原数组开头,并返回数组的长度

1 unshift:将参数添加到原数组开头,并返回数组的长度 
2 var a = [1,2,3,4,5]; 
3 var b = a.unshift(-2,-1); //a:[-2,-1,1,2,3,4,5]   b:7 
4 注:在IE6.0下测试返回值总为undefined,FF2.0下测试返回值为7,所以这个方法的返回值不可靠,需要用返回值时可用splice代替本方法来使用。

pop:删除原数组最后一项,并返回删除元素的值;如果数组为空则返回undefined 

1 var a = [1,2,3,4,5]; 
2 var b = a.pop(); //a:[1,2,3,4]   b:5 //不用返回的话直接调用就可以了

push:将参数添加到原数组末尾,并返回数组的长度 

1 var a = [1,2,3,4,5]; 
2 var b = a.push(6,7); //a:[1,2,3,4,5,6,7]   b:7 

 

concat:返回一个新数组,是将参数添加到原数组中构成的

1 concat:返回一个新数组,是将参数添加到原数组中构成的 
2 var a = [1,2,3,4,5]; 
3 var b = a.concat(6,7); //a:[1,2,3,4,5]   b:[1,2,3,4,5,6,7] 

 

splice(start,deleteCount,val1,val2,...):从start位置开始删除deleteCount项,并从该位置起插入val1,val2,... 

1 var a = [1,2,3,4,5]; 
2 var b = a.splice(2,2,7,8,9); //a:[1,2,7,8,9,5]   b:[3,4] 
3 var b = a.splice(0,1); //同shift 
4 a.splice(0,0,-2,-1); var b = a.length; //同unshift 
5 var b = a.splice(a.length-1,1); //同pop 
6 a.splice(a.length,0,6,7); var b = a.length; //同push 

reverse:将数组反序 

1 var a = [1,2,3,4,5]; 
2 var b = a.reverse(); //a:[5,4,3,2,1]   b:[5,4,3,2,1] 

 

sort(排序函数):按指定的参数对数组进行排序 

 1 <script type="text/javascript">
 2 
 3     $(function () {
 4         var values = [0, 1, 15, 10, 5];
 5         
 6         values.sort();
 7         alert(values); //0,1,10,15,5
 8 
 9       
10         values.sort(compare);//SORT方法的原理是调用数组每个变量的TOString方法进行对比,因此在15在5的前面在TOtring(); alert(values[2].toString() > values[4].toString()) 返回FLAST "15">"5"
11      
12         alert(values);//0,1,5,10,15
13         //因此我们可以给个方       
14     })
15     //排序函数
16     function compare(value1, value2) {
17 
18         if (value1 < value2) {
19             return -1;//第一个参数位于第二个参数之前返回一个负数
20         } else if (value1 > value2) {
21             return 1;// 第一个参数位于第二个参数之后返回一个负数
22         } else {
23             return 0;//相等返回0
24 
25         }
26     }
27 
28 </script>
数组排序 values.sort(函数);
 1 sort()对象数组‘数字、字符串数组排序应用
 2  
 3 
 4 根椐数组中某一对象的某个属性进行排序(数组的对象是数字或对象)
 5 
 6 x y 指数组中的对象,y.Reduction x.Reduction了数组对象的某个属性
 7 
 8 Runners对象数组应用:
 9 
10 var arr =Runners.sort(function (x, y) {
11 
12 return (parseFloat(y.Reduction) - parseFloat(x.Reduction)); //把百分比转成数字进行比较 如:12% -----》0.12
13 });
14 
15 
16  
17 
18  
19 
20 跟进:
21 
22 因为sort()是按照字母表顺序排序,所以不能为数值数组排序。因此,为了正确的对数值排序,必须为sort()方法定义一个比较函数:
23 
24 numbers = Runners.sort(
25 
26 function(x,y)
27 
28 {
29 
30 return (x - y);
31 
32 }
33 
34 );
35 
36 分类
sort()对象数组‘数字、字符串数组排序应用2

 

 

 

slice(start,end):返回从原数组中指定开始下标到结束下标之间的项组成的新数组 

1 slice(start,end):返回从原数组中指定开始下标到结束下标之间的项组成的新数组 
2 var a = [1,2,3,4,5]; 
3 var b = a.slice(2,5); //a:[1,2,3,4,5]   b:[3,4,5] 

join(separator):将数组的元素组起一个字符串,以separator为分隔符,省略的话则用默认用逗号为分隔符 

1 var a = [1,2,3,4,5]; 
2 var b = a.join("|"); //a:[1,2,3,4,5]   b:"1|2|3|4|5"

 

posted on 2015-06-14 17:00  高达  阅读(404)  评论(0)    收藏  举报

导航