Javascript开发中,数组是用到最多一个内容。同时数组的方法不多,下面介绍在数组排序中用到的2个常用方法。sort()方法和reverve()方法。
sort()方法可以很容易将一个数组进行排序,可以根据字母的ASC码大小和数字大小来排序。
reverse()方法可以理解反序操作。
下面通过数组的sort()方法和reverse()方法来完成一个小的需求。
<script type="text/javascript">
//
/*
需求:
Num1,Num2,Num3,Num4,在程序运行中,这四个数会发生改变,找出最大的那个数字对应的变量。假设
Num1=10,Num2=3,Num3=80,Num4=34;
输出的结果应该是:NumD
*/
var Num1=40, Num2=20, Num3=90, Num4=5;
arrayLength=4;
var numArray=new Array();
for (var i = 0; i < arrayLength; i++) {
numArray.push(Num1);
numArray.push(Num2);
numArray.push(Num3);
numArray.push(Num4);
}
//复制数组
var tempArray=new Array();
for (var i = 0; i < 4; i++) {
tempArray[i]=numArray[i];
}
var sortedNum = tempArray.sort().reverse();
var maxNum = sortedNum[0];
var myindex;
for (var j = 0; j < arrayLength; j++) {
if (numArray[j] == maxNum) {
myindex = parseInt(j)+1;
break;
}
}
document.write("The max number in the Array:Num" + myindex + "<br/>");
</script>
在Javascript中进行数组复制,使用for循环的方法,性能消耗很大。可以使用slice()或contact()方法。