본문 바로가기

언어/javascript

javascript : array sort 방법

반응형
var array = ['A','B','C','D'];

var output = '';

for(var i = 0;i< array.length;i++){
    output += i + ' : '+ array[i] + '\n';
}

console.log(output);

기본적으로 내장된 정렬을 사용해서는 String이라던가 숫자를 오름차순으로 정렬할 수있다.

하지만 class로 생성된 array에 대해서 정렬을 하려면 어떻게 해야할까?

 

 

function A(a, b) {
    this.a = a;
    this.b = b;
}

var array = [];

array.push(new A(2, 4));
array.push(new A(1, 4));
array.push(new A(6, 1));
array.push(new A(3, 8));

console.log('before sort')
for (key in array) {
    console.log(array[key]);
}

// sort

array.sort(function (left, right) {
    return left.a - right.b;
});
console.log('\nafter sort');

for (key in array) {
    console.log(array[key]);
}

 

before sort
A { a: 2, b: 4 }
A { a: 1, b: 4 }
A { a: 6, b: 1 }
A { a: 3, b: 8 }

after sort
A { a: 3, b: 8 }
A { a: 1, b: 4 }
A { a: 2, b: 4 }
A { a: 6, b: 1 }

 

 

 

 

 

반응형

'언어 > javascript' 카테고리의 다른 글

javascript : Date 객체  (0) 2020.12.16
javascript : array 객체의 remove사용법  (0) 2020.12.15
javascript : HTML 관련 메서드  (0) 2020.12.15
javascript : String  (0) 2020.12.15
javascript : Nmuber 객체  (0) 2020.12.15