JS:数组的常用方法

1. push() 方法将一个或多个元素添加到数组的末尾,并返回该数组的新长度

    <script>
        /* push() 方法将一个或多个元素添加到数组的末尾,并返回该数组的新长度。 */
        function demoPush() {
            var arr = [2, 4, 6, 8, 10];
            var newArr = arr.push(12);
            console.log(newArr);//6  该数组的新长度

            newArr = arr.push(14, 16, 18, 20);
            console.log(newArr);//10  该数组的新长度
        }
        demoPush()
    </script>

2. pop()方法从数组中删除最后一个元素,并返回该元素的值。此方法更改数组的长度

    <script>
        /* pop()方法从数组中删除最后一个元素,并返回该元素的值。此方法更改数组的长度。 */
        function demoPop() {
            var arr = ["香蕉", "苹果", "橘子", "西瓜", "葡萄"];
            console.log(arr.pop()); //葡萄
            console.log(arr.length); //4
            console.log(arr); //['香蕉', '苹果', '橘子', '西瓜']
        }
        demoPop()
    </script>

3. unshift() 方法将一个或多个元素添加到数组的开头,并返回该数组的新长度(该方法修改原有数组)

    <script>
        // unshift() 方法将一个或多个元素添加到数组的开头,并返回该数组的新长度
        // (该方法修改原有数组)
        function demoUnshift() {
            var arr = [7, 9, 11];
            console.log(arr.unshift(1, 3, 5)); //6
            console.log(arr); //[1, 3, 5, 7, 9, 11]

        }
        demoUnshift()
    </script>

4. shift() 方法从数组中删除第一个元素,并返回该元素的值。此方法更改数组的长度

    <script>
        // shift() 方法从数组中删除第一个元素,并返回该元素的值。此方法更改数组的长度
        function demoShift() {
            var arr = ['a', 'b', 'c', 'd', 'e'];
            var deleteHead = arr.shift();
            console.log(deleteHead); //a
            console.log(arr); //['b', 'c', 'd', 'e']
        }
        demoShift()
    </script>

5. splice() 方法通过删除或替换现有元素或者原地添加新的元素来修改数组,并以数组形式返回被修改的内容,此方法会改变原数组

    <script>
        // splice() 方法通过删除或替换现有元素或者原地添加新的元素来修改数组,
        // 并以数组形式返回被修改的内容。此方法会改变原数组
        function demoSplice() {
            var arr = ['星期一', '星期三', '星期四', '星期六'];
            arr.splice(1, 0, '星期二');
            console.log(arr); //['星期一', '星期二', '星期三', '星期四', '星期六']

            // 由被删除的元素组成的一个数组。
            // 如果只删除了一个元素,则返回只包含一个元素的数组。
            // 如果没有删除元素,则返回空数组。
            var ret = arr.splice(4, 1, '星期五');
            console.log(ret); //星期六
            console.log(arr); //['星期一', '星期二', '星期三', '星期四', '星期五']

            ret = arr.splice(5, 0, '星期六');
            console.log(ret); //[]
            console.log(arr); //['星期一', '星期二', '星期三', '星期四', '星期五', '星期六']
        }
        demoSplice()
    </script>

6. reverse原地反转数组

    <script>
        // reverse原地反转数组,改变原数组
        function demoReverse() {
            var arr = [1, 2, 3];
            var reverseArr = arr.reverse();

            console.log(reverseArr); //[3, 2, 1]
            console.log(arr); //[3, 2, 1]
        }
        demoReverse()
    </script>

7. sort() 方法用原地算法对数组的元素进行排序,并返回数组。默认排序顺序是在将元素转换为字符串,然后比较它们的码点(在字符集中的序号)

    <script>
        // sort() 方法用原地算法对数组的元素进行排序,并返回数组。
        // 默认排序顺序是在将元素转换为字符串,然后比较它们的码点(在字符集中的序号)
        function demoSort() {
            var arr = ['zhang', 'luo', 'cai', 'hua', 'find'];
            arr.sort();
            console.log(arr); //['cai', 'find', 'hua', 'luo', 'zhang']
        }
        demoSort()

        /* 自定义排序规则 */
        function demoSort2() {
            var arr = [22, 5, 15, 23, 48, 89, 47];
            arr.sort(
                function (a, b) {
                    return a - b
                }
            )
            console.log(arr); //[5, 15, 22, 23, 47, 48, 89]
        }
        demoSort2()
    </script>

8. concat() 方法用于合并两个或多个数组。此方法不会更改现有数组,而是返回一个新数组

    <script>
        // concat() 方法用于合并两个或多个数组。此方法不会更改现有数组,而是返回一个新数组
        function demoConcat() {
            var arr1 = ['a', 'b', 'c'];
            var arr2 = ['d', 'e', 'f'];
            var arr3 = arr1.concat(arr2);

            console.log(arr3); //['a', 'b', 'c', 'd', 'e', 'f']
            console.log(arr1); //['a', 'b', 'c']
            console.log(arr2); //['d', 'e', 'f']

            var arr = [1, 2, 3];
            var newarr = arr.concat(4, 5, [6, 7, 8, 9], [10, 11], 12);
            console.log(newarr); //[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]
        }
        demoConcat()
    </script>

9. join() 方法将一个数组(或一个类数组对象)的所有元素连接成一个字符串并返回这个字符串。如果数组只有一个项目,那么将返回该项目而不使用分隔符

    <script>
        /* join() 方法将一个数组(或一个类数组对象)的所有元素连接成一个字符串并返回这个字符串。
        如果数组只有一个项目,那么将返回该项目而不使用分隔符。 */
        function demoJoin() {
            var arr = ['Fire', 'Air', 'Water'];

            console.log(arr.join()); //Fire,Air,Water
            console.log(arr.join('')); //FireAirWater
            console.log(arr.join('-')); //Fire-Air-Water
        }
        demoJoin()
    </script>

10. indexOf()方法返回在数组中可以找到一个给定元素的第一个索引,如果不存在,则返回-1

    <script>
        // indexOf()方法返回在数组中可以找到一个给定元素的第一个索引,如果不存在,则返回-1
        function demoIndexOf(){
            var arr = ['red','pink','blue','green','yellow','red'];

            // 寻找red首次出现的下标
            console.log(arr.indexOf('red')); //0
            
            // 从序号2向后寻找red首次出现的下标
            console.log(arr.indexOf('red',2)); //5

            console.log(arr.indexOf('while')); //-1
        }
        demoIndexOf()
    </script>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值