js数组2021.12.31

数组的splice方法

介绍:删除数组元素

语法:数组.splice(删除的元素,个数)

示例:

 var arr = ['karry', 'roy', 'jackson', 'cx', 'wyb', 'bjt'];

 arr.splice('love', 1)
 
 console.log(arr);  
 // splice的结果
["karry", "roy", "jackson", "cx", "wyb", "bjt", "wje", "lhr"]

数组的indexOf方法

介绍:查找指定的数组元素,有就返回数组位置,没有就返回-1

语法:数组.indexOf()

示例:


var arr = ['karry', 'roy', 'jackson', 'cx', 'wyb', 'bjt'];
console.log(arr.indexOf('cx'), arr.indexOf('cxc'));
结果:3,-1

数组去重的常用方法

方法一、双重for循环+splice()

示例:

  // 方法一:双重for循环+splice()
        var arr = [11, 22, 33, 44, 3, 4, 5, 6, 7, 8, 9, 10, 11, 22, 33];
        for (let i = 0; i < arr.length; i++) {
            for (let j = i + 1; j < arr.length; j++) {
                if (arr[i] == arr[j]) {
                    arr.splice(j, 1);
                    j--;
                }

            }
        }
        console.log(arr);

结果:

 

方法二、Set数据结构+数组的扩展运算符

示例:

 // 方法二:Set+数组的扩展运算符
        var arr2 = [11, 11, 22, 22, 33, 33, 1, 2, 3];
        let arrOld = new Set(arr2);
        let arrNew = [...arrOld];
        console.log('arrNew', arrNew);
        console.log('arrNew2', [...new Set(arr2)]);

结果:

方法三、indexOf()+新数组

示例:

   // 方法三、indexOf()+新数组
        function newArr(array) {
            //一个新的数组 
            var arrs = [];
            //遍历当前数组 
            for (var i = 0; i < array.length; i++) {
                //如果临时数组里没有当前数组的当前值,则把当前值push到新数组里面 
                if (arrs.indexOf(array[i]) == -1) {
                    arrs.push(array[i])
                };
            }
            return arrs;
        }
        var arr = [1, 1, 2, 5, 5, 6, 8, 9, 8];
        console.log(newArr(arr))

结果: 

 用数组的sort方法排序

介绍:将数组元素进行排序的方法

语法:数组名.sort(函数)

示例:

 var arr5 = [123, 111, 134, 234, 60, 78, 89];
        // 升序
        arr5.sort(function (a, b) {
            return a - b
        });
        console.log('sort1', arr5);
        // 降序
        arr5.sort(function (a, b) {
            return b - a
        });
        console.log('sort2', arr5);

结果:

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值