js重学8--数组排序

2021-05-17  本文已影响0人  0清婉0

1.reverse()方法:用于颠倒数组中元素的顺序

只改变数组,不会创建新数组

2.sort()方法:对数组的元素进行排序

如果没有参数,则按字符的编码顺序进行排序

如果要按其他方法排序,需要指定参数(比较函数)

一、将数组中的元素按字符串长度从小到大的顺序进行排列

var arr = new Array("Javascript","HTML","C#","PHP");

document.write("原数组:" + arr + "<br>");

function ascOrder(x,y){

    if(x.length>y.length){

        return 1;

    }else{

        return -1;

    }

}

arr.sort(ascOrder);

document.write("排序后的数组:" + arr);

【输出结果】

原数组:Javascript,HTML,C#,PHP

排序后的数组:C#,PHP,HTML,Javascript

二、数学80分,语文85分,英语76分,物理91分,化学88分,升序排列,将结果输出在表格中

<table cellspacing="1" cellpadding="1" border="1">

    <tr height="30">

        <td align="center" width="50">学科</td>

        <td align="center" width="50">分数</td>

    </tr>

<script>

var movieArr = new Array("英语","数学","语文","物理","化学");

var boxofficeArr = new Array(76,80,85,91,88);

var sortArr = new Array(76,80,85,91,88);

function ascOrder(x,y){

    if(x>y){

        return 1;

    }else{

        return -1;

    }

}

sortArr.sort(ascOrder);

for(var i=0;i<sortArr.length;i++){

    for(var j=0;j<sortArr.length;j++){

        if(sortArr[i]==boxofficeArr[j]){

            document.write("<tr height=26 bgcolor='#fff'>");

            document.write("<td align=center>" + movieArr[j] + "</td>");

            document.write("<td align=center>" + sortArr[i] + "分</td>");

            document.write("</tr>");

        }

    }

}

</script>

</table>

【输出结果】

学科   分数

英语   76分

数学   80分

语文   85分

化学   88分

物理   91分

上一篇 下一篇

猜你喜欢

热点阅读