2021-09-09 JS数组方法

数组方法

<script>
        // 一.判断是否为数组
        // 1.instanceof 可以判断一个对象是否是某个构造函数的实例
        var arr = [1, 23];
        var obj = {};
        console.log(arr instanceof Array); // true
        console.log(obj instanceof Array); // false

        // 2.Array.isArray()用于判断一个对象是否为数组,isArray() 是 HTML5 中提供的方法
        console.log(Array.isArray(arr)); // true
        console.log(Array.isArray(obj)); // false

        // 二.添加、删除数组元素
        // 1.push(数组末尾添加)、unshift(数组开头添加)为增加元素方法;
        arr.push(4, 'pink');
        console.log(arr.push(4, 'pink')); //返回数组长度
        console.log(arr);

        arr.unshift(0000);
        console.log(arr.unshift(0000)); //返回数组长度
        console.log(arr);

        // 2.pop(删除最后一个)、shift(删除第一个)为删除元素的方法
        arr.pop();
        console.log(arr.pop()); //返回被删除的元素
        console.log(arr);

        arr.shift();
        console.log(arr.shift()); //返回被删除的元素
        console.log(arr);

        // 三.数组排序
        // 1.反转数组
        var arr1 = [4, 3, 21]
        arr1.reverse();
        console.log(arr1);

        // 2.排序
        // 传入“function(a,b){ return a-b;}”,则为升序
        // 传入“function(a,b){ return b-a;}”,则为降序
        arr1.sort(function (a, b) {
            return a - b;
        });
        console.log(arr1);

        arr1.sort(function (a, b) {
            return b - a;
        })
        console.log(arr1);

        // 四.数组索引
        // 1.indexOf()方法
        console.log(arr1.indexOf(21)); // 只返回数组中的第一个指定的元素,找不到返回-1
        // 2.lastIndexOf()方法
        console.log(arr1.lastIndexOf(21)); // 只返回数组中的最后一个指定的元素,找不到返回-1

        // 五.数组转换为字符串
        // 1.arr.toString()方法
        var arr2 = [1, 2, 3, 4];
        console.log(arr2.toString());

        // 2.join(分隔符)方法
        console.log(arr2.join('+'));
    </script>

数组案例

// 1.筛选数组
        var salary = [1500, 1200, 2000, 2100, 1800];
        var res = [];

        function shaiXuan() {
            for (let index = 0; index < salary.length; index++) {
                if (salary[index] < 2000) {
                    // res[res.length] = salary[indenx];
                    res.push(salary[index]);
                };
            }
            return res;
        }
        console.log(shaiXuan(salary));

        // 2.数组去重
        var arr1 = ['a', 's', 's', 'd', 'f', 'g', 'h', 'j'];
        var res1 = [];

        function quChong(arr) {
            for (let index = 0; index < arr1.length; index++) {
                if (res1.indexOf(arr1[index]) === -1) {
                    res1.push(arr1[index]);
                }
            }
            return res1;
        }

        console.log(quChong(arr1));
    </script>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值