//JS引用数据类型
          //数组
          var arr1=new Array();//数组的声明一
          var arr2=[1,2,3,true,new Date()];//数组的声明二
          var arr3=arr2.pop();//移除数组的最后一个元素,返回移除的元素
          var arr4=arr2.push(12,23);//向数组中添加元素,返回新数组的长度
          var arr5=arr2.shift();//移除数组的头部一个元素,返回移除的元素
          var arr6=arr2.unshift(false,"qq");//从头部向数组中添加元素,返回新数组的长度
          var arr7=arr2.splice(1,2);//截取新数组(第一个参数起始位置,第二个参数截取个数,第三个参数:追加新元素的个数)
          var arr8=arr2.slice(2,4);//截取范围 返回截取的内容 操作的不是数组本身
          var arr9=[12,13,3,34];
          var arr10=[14,15];
          var result1=arr9.concat(arr10);//合并两个数组
          var result2=arr9.join("-");//在元素之间加入内容
          var result3=arr9.sort();//排序 正序 把元素当作字符串
          var result4=arr9.reverse();//排序倒序 按照数组的顺序 倒序
          function compare(value1,value2){
               if(value1<value2){
                   return -1;
               }else if (value1>value2) {
               	   return 1;
               }else{
                   return 0;
               }  
          }
          var result5=arr9.sort(compare);//正序
         <!-- ECMN5新特性-->
         var aa=[1,2,3,4,5];
         var index1=aa.indexOf(1);//返回元素在数组的位置
         var index2=aa.indexOf(2,4);
         var index3=aa.lastIndexOf(2);//从数组尾部查找元素的位置
         <!--迭代数组的方法-->
         //对于数组的每一个元素用一个函数运行,如果都返回true,结果返回true
          var verey=aa.every(function(item,index,array){
                return item>0;
          });
          //对于数组的每一个元素用一个函数运行,返回运行后的结果
          var filter=aa.filter(function(item,index,array){
          	  return item > 0;
          });
          //循环数组的每一个元素
          aa.forEach(function(item,index,array){
             // alert(item);
          });
         //对于数组的每一个元素用一个函数运行可以经过函数执行后,把新的结果返回
         var map=aa.map(function(item,index,array){
         	  return item*2;
         });
         //对于数组的每一个元素用一个函数运行,如果有一项返回true,结果返回true
         var some=aa.some(function(item,index,array){
         	 return item>3;
         })
         //pre 前一个值  cur当前值 index索引位置 array数组(左边开始)
         var reduce=aa.reduce(function(prev,cur,index,array){
                 return prev+cur;
         });
          //pre 前一个值  cur当前值 index索引位置 array数组(右边开始)
         var reduce=aa.reduceRight(function(prev,cur,index,array){
                 return prev+cur;
         });
原文:http://www.cnblogs.com/jalja/p/4385485.html