1.使用indexof
2.使用开关思想
3.使用对象的属性名不能重复检测
4.使用冒泡排序的方法
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>数组去重</title>
</head>

<body>

</body>

</html>
<script>
    var arr = [2, 45, 67, 87, 43, 45, 88, 66, 22, 66, 98, 1];
    var newarr = [];
    //1.使用indexOf检测
    for (var i = 0; i < arr.length; i++) {
        if (newarr.indexOf(arr[i]) === -1) {
            newarr.push(arr[i])
        }
    }
    console.log(newarr);

    //2.开关思想
    for (var i = 0; i < arr.length; i++) {
        var buzai = true;
        for (var j = 0; j < newarr.length; j++) {
            if (arr[i] === newarr[j]) {
                buzai = false
            }
        }
        if (buzai) {
            newarr.push(arr[i])
        }
    }
    console.log(newarr);

    //3.对象方法检测--对象的属性名不可以重复
    var obj = {};
    for (var i = 0; i < arr.length; i++) {
        if (obj[arr[i]] === undefined) {
            obj[arr[i]] = 1;
            newarr.push(arr[i])
        }
    }
    console.log(newarr);

    //4.冒泡排序的方式

    for (i = 0; i < arr.length - 1; i++) {
        for (j = 0; j < arr.length - i; j++) {
            if (arr[j] > arr[j + 1]) {
                var temp = arr[j];
                arr[j] = arr[j + 1];
                arr[j + 1] = temp;
            }
        }
    }
    for (var i = 0; i < arr.length; i++) {
        if (arr[i] !== arr[i + 1]) {
            newarr.push(arr[i])
        }
    }
    console.log(newarr);

</script>

芹丸子
40 声望4 粉丝

所有文章都是自己的学习记录,如果对你有帮助我很荣幸,如果文章记录之处有什么不对不好的地方还请指教