美文网首页
js重学8--数组排序

js重学8--数组排序

作者: 0清婉0 | 来源:发表于2021-05-17 21:16 被阅读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分

    相关文章

      网友评论

          本文标题:js重学8--数组排序

          本文链接:https://www.haomeiwen.com/subject/tmksjltx.html