记录一些数组的方法

82 阅读1分钟

前言:通过持续更文,巩固基础,复习数组的方法,好多学了都忘。。

数组常见的方法

1. sort() 排序

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <ul id="oUl">
        <li>8</li>
        <li>7</li>
        <li>12</li>
        <li>1</li>
        <li>9</li>
    </ul>
    <script>
        // !#1 
        /* const arr = [8, 7, 6, 1, 3, 6]
        // 只能排列 0 ~ 9
        arr.sort()
        console.log(arr) // (6) [1, 3, 6, 6, 7, 8] */
        
        // !#2
        /* const arr = [8, 7, 6, 1, 3, 6, 11]
        // 后面减去前面表示升序
        arr.sort((item1, item2) => item2 - item1)
        console.log(arr) // [11, 8, 7, 6, 6, 3, 1] */

        // !#3
        /* const arr = [8, 7, 6, 1, 3, 6, 11]
        // 前面减去后面表示降序
        arr.sort((item1, item2) => item1 - item2)
        console.log(arr) //   [1, 3, 6, 6, 7, 8, 11] */

        /* const arr = [{
          num: 9,
          name: 'ifer'
        }, {
          num: 7,
          name: 'elser'
        }, {
          num: 12,
          name: 'div'
        }]
        // 根据对象中的 num 进行排序
        arr.sort((item1, item2) => item2.num - item1.num)
        console.log(arr)
        // 0: {num: 12, name: 'div'}
        // 1: {num: 9, name: 'ifer'}
        // 2: {num: 7, name: 'elser'} */

        const aDivResult = Array.from(document.querySelectorAll('li')).sort((item1, item2) => parseInt(item2
            .innerHTML) - parseInt(item1.innerHTML))

        console.log(aDivResult) // 5个li的数组 innerHTML: "12"  innerText: "12"

        for (let i = 0; i < aDivResult.length; i++) {
            // 剪切
            oUl.appendChild(aDivResult[i])
        }
    </script>
</body>

</html>

2.