0
点赞
收藏
分享

微信扫一扫

JS-数组去重打卡

let arr = [12, 23, 34, 12, 12, 34, 56, 56, 56, 76]

方法一:set特性,数据不能重复

function one() {
            let set = new Set(arr)
            let arr1 = [...set]
            console.log(arr1);
        }
        one()

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

function two() {
            let arr1 = []
            for (let i = 0; i < arr.length; i++) {
                if (arr1.indexOf(arr[i]) == -1) {
                    arr1.push(arr[i])
                }
            }
            console.log(arr1);
        }
        two()

方法三:数组双重for循环+splice

function three() {
            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)
        }
        three()

方法四:对象属性特性

function four() {
            let obj = {};
            let newArr = [];
            for (let i = 0; i < arr.length; i++) {
                if (obj[arr[i]]) {
                    obj[arr[i]]++
                } else {
                    obj[arr[i]] = 1
                    newArr.push(arr[i])
                }
            }
            console.log(newArr);
        }
        four()

方法五:数组includes() 方法用来判断一个数组是否包含一个指定的值,根据情况,如果包含则返回 true,否则返回 false。

function five() {
            let newArr = [];
            for (let i = 0; i < arr.length; i++) {
                if (!newArr.includes(arr[i])) {
                    newArr.push(arr[i])
                }
            }
            console.log(newArr);
        }

举报

相关推荐

js-数组练习

JS-数组基础

js数组去重

Js数组去重

JS-拖拽

js-原型

JS-递归

0 条评论