JavaScript 去除数组中的重复元素

JavaScript 去除数组中的重复元素

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>去除一个数组中重复的元素</title>
    </head>
    <body>
    <script type="text/javascript">
    /*
     * 方法一:
     */
        var arr = [1, 0, 2, 1, 8, 1, 0, 10, 8];
        var obj = {};
        var temp = [];
        for(var i=0; i<arr.length; i++) {
            if(!obj[arr[i]]) {
                obj[arr[i]] = 1;
                temp.push(arr[i]);
            }
        }
        console.log(temp); //1,0,2,8,10

        /*
         * 方法二:
         */
        var arr2= [1, 0, 2, 1, 8, 1, 0, 10, 8, 9, 11];
        var arr3 = [];
        for(var i=0; i<arr2.length; i++) {
        //indexOf()方法从数组的开头(位 置 0)开始向后查找,返回索引号
            if((arr3.indexOf(arr2[i])) < 0) {
                arr3.push(arr2[i]);
            }
        }
        console.log(arr3);//1,0,2,8,10,9,11
        /*
         * 方法三:
         */
        //filter():对数组中的每一项运行给定函数,返回该函数会返回 true的项组成的数组。 
        var arr4 = [0, 10, 22, 0, 10, 1, 2, 3, 1];
        var arr5 = arr4.filter(function(element, index, arr4) {
            return arr4.indexOf(element) == index;
        });
        console.log(arr5); //0,10,22,1,2,3
    </script>
    </body>
</html>

猜你喜欢

转载自blog.csdn.net/qq_36595013/article/details/82219553