您的位置:首页 > Web前端 > JavaScript

JS数组的一些常用方法

2016-03-09 00:26 621 查看
今天学习了JS数组的一些常用方法,总结在这里,以便以后查看:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
<title>Untitled Document</title>
<script type="text/javascript" charset="utf-8">
/**
* push和pop
*/
//var arr=new Array();
//var arr=[1,2,4,new Date(),"dsds"];
//arr.length=3;
//alert(arrs);
//var arr=[new Date(),"boolean"];
//var result=arr.push(1,2,3,4);  //返回值为新数组的长度
//alert(arr);
//alert(result);
//var bb=arr.pop();//返回值为移除的元素
//alert(arr);
//alert(bb);
/**
* shift和unshift
*/
//var arr=[1,2,3,4,new Date()];
//var result=arr.shift();//从头部移除一个元素
//alert(arr);
//alert(result);   //返回移除的元素的值
//var aa=arr.unshift(10,false);  //往头部添加元素
//alert(arr);
//alert(aa);  //返回移除新添加元素后数组的长度
/**
* splice 和slice用法
*
* splice  :第一个参数:起始位置  (截取的方法)
*          第二个参数:表示截取的个数
*          第三个参数以后:表示需要添加进来的元素
* slice   :不对数组进行操作
*/
//var arr=[1,2,3,4,5];
//var result=arr.splice(1,4,4,5,3,4,5,6);//对数组进行操作
//alert(arr);
//alert(result);//返回的是截取的那一部分元素的值
//var arr=[1,2,3,4,3,2];
//var result=arr.slice(2,4);  //不对数组进行操作
//alert(arr);
//alert(result);//返回截取的内容
/**
* concat和join
*/
//var arr1=[1,2,3];
//var arr2=[true,"dsjid","sdsidi"];
//var result=arr1.concat(arr2) //连接两个数组,不操作数组本身
//alert(arr1);
//alert(arr2);
//alert(result);//返回值为新数组的元素
//var arr1=[1,true,"dfd"];
//var result=arr1.join('-');//在每个元素加入内容不操作数组本身
//alert(arr1);
//alert(result);
/**
* sort正序排序
* reverse倒序排序
*/
var arr1 = [5, 4, 3, 10, 33, 11];
//arr1.sort();  //升序操作,但由于底层代码的关系结果会是10,11,3,33,4,5
//arr1.reverse();//仅仅是将数组元素位置倒置过来
//alert(arr1);
//为了在数组的升序排序中能够得到我们想要的结果故特地写了一个方法出来,将升序的规则重新定义一下
//就能够得到我们正常的自然数顺序的排列顺序了
 function compare(value1,value2){
if(value1>value2){
return 1;
}else if(value1<value2){
return -1;
}else{
return 0;
}
}
arr1.sort(compare);
alert(arr1);
</script>
</head>
<body>
</body>
</html>

     上面的代码里面为什会出现这样的升序效果,这是因为在原数组arr1中排序的规则是将里面的元素当作一个字符串来比较的,所以出现了这样的结果,在比较数值数组的时候

最好将排序规则重写一下。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: