代码改变世界

JS数组控制台排序

2017-11-11 23:44  dengshasha  阅读(360)  评论(0编辑  收藏  举报

近期初学JS,觉得是一门非常强大的语言,前期是在控制台输出,简单的总结了一下数组排序的方法:

一、先选择排序然后再去重:

let arr = [3,7,2,9,6,5,8,7,3];
let temp;
for(let i=0; i<arr.length-1; i++){
    for(let j=i+1 ; j<arr.length ;j++){
        if(arr[i]>arr[j]){
            temp = arr[i];
            arr[i] = arr[j];
            arr[j] = temp;
        }
    }
}
let arr1 = [];
for(let k=0 ; k<arr.length ; k++){
    if(arr[k] != arr[k+1]){
        arr1 = arr1.concat(arr[k]);
    }
}
console.log(arr1);

  该方法较于复杂,并且去重过后的数组排列顺序会变化,所以仅做一个思维练习的参考:

二、直接删除重复元素法去重:

let arr = [3,7,2,3,9,6,7,5,8,7];
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);
        }
    }
}
console.log(arr);