취미처럼

[Javascript] 정렬 본문

JavaScript/이론

[Javascript] 정렬

sirius 2021. 3. 16. 10:44
var array = [4, 2, 1, 3, 5];
array.sort(function(a, b) {
   return a - b; 
});

console.log(array);
console.log("============================================================");

var items = [
  { name: 'Edward', value: 21 },
  { name: 'Sharpe', value: 37 },
  { name: 'And', value: 45 },
  { name: 'The', value: -12 },
  { name: 'Magnetic', value: 13 },
  { name: 'Zeros', value: 37 }
];

for(var i=0; i < items.length; i++) {
    console.log(items[i]);
}
console.log("============================================================");

// sort by value
items.sort(function (a, b) {
  return a.value - b.value;
});

for(var i=0; i < items.length; i++) {
    console.log(items[i]);
}
console.log("============================================================");

// sort by name
items.sort(function(a, b) {
  var nameA = a.name.toUpperCase(); // ignore upper and lowercase
  var nameB = b.name.toUpperCase(); // ignore upper and lowercase
  if (nameA < nameB) {
    return -1;
  }
  if (nameA > nameB) {
    return 1;
  }

  // names must be equal
  return 0;
});

for(var i=0; i < items.length; i++) {
    console.log(items[i]);
}
console.log("============================================================");

var items = ['réservé', 'premier', 'cliché', 'communiqué', 'café', 'adieu'];
items.sort(function (a, b) {
  return a.localeCompare(b);
});

for(var i=0; i < items.length; i++) {
    console.log(items[i]);
}








결과 ============================================================

[ 1, 2, 3, 4, 5 ]
============================================================
{ name: 'Edward', value: 21 }
{ name: 'Sharpe', value: 37 }
{ name: 'And', value: 45 }
{ name: 'The', value: -12 }
{ name: 'Magnetic', value: 13 }
{ name: 'Zeros', value: 37 }
============================================================
{ name: 'The', value: -12 }
{ name: 'Magnetic', value: 13 }
{ name: 'Edward', value: 21 }
{ name: 'Sharpe', value: 37 }
{ name: 'Zeros', value: 37 }
{ name: 'And', value: 45 }
============================================================
{ name: 'And', value: 45 }
{ name: 'Edward', value: 21 }
{ name: 'Magnetic', value: 13 }
{ name: 'Sharpe', value: 37 }
{ name: 'The', value: -12 }
{ name: 'Zeros', value: 37 }
============================================================
adieu
café
cliché
communiqué
premier
réservé

'JavaScript > 이론' 카테고리의 다른 글

[Javascript] 배열, for문  (0) 2021.03.16
[Javascript] 함수와 변수의 관계  (0) 2021.03.16
[Javascript] Scope, Hoisting  (0) 2021.03.16
[Javascript] var, let, const  (0) 2021.03.16
[Javascript] 형변환  (0) 2021.03.16
Comments