JavaScript에서 ES6 맵 정렬

Saad Aslam 2023년10월12일
  1. JavaScript의 ES6 맵 개요
  2. .sort() 메서드를 사용하여 JavaScript에서 ES6 맵 정렬
  3. JavaScript에서 문자열 키로 ES6 맵 정렬
  4. JavaScript에서 숫자 키로 ES6 맵 정렬
JavaScript에서 ES6 맵 정렬

이 기사에서는 JavaScript를 사용하여 ES6 맵을 정렬하기 위한 필수 단계를 자세히 설명하고 해당 절차를 보여줍니다.

JavaScript의 ES6 맵 개요

객체를 맵으로 사용하면 ES6에 도입된 Map이라는 새로운 컬렉션 유형으로 해결되는 몇 가지 단점이 있습니다.

맵 객체는 정의에 따라 키-값 쌍을 저장하며 모든 유형의 값은 저장하는 쌍의 키 또는 값에 사용할 수 있습니다. 또한 Map 개체는 키가 Map에 삽입된 원래 시퀀스를 기억합니다.

.sort() 메서드를 사용하여 JavaScript에서 ES6 맵 정렬

맵에서 키를 정렬하려면 the .sort() 메서드를 사용하면 됩니다. 예: var waqarMap = new Map([...mapA].sort()). Spread 연산자 (...)를 사용하여 Map의 모든 항목을 배열로 가져온 다음 정렬 기술을 사용하여 정렬합니다.

배열의 멤버를 정렬하기 위해 sort() 함수는 다음 논리를 사용합니다.

  • 비교 함수의 반환 값이 0보다 크면 ba 앞에 오도록 배열을 정렬해야 합니다.
  • 비교 함수의 반환 값이 0보다 작으면 정렬 순서에서 ab 앞에 와야 합니다.
  • 비교 함수의 반환 결과가 0이면 ab의 순서는 이전과 동일하게 유지되어야 합니다.

우리는 지도를 두 가지 방식으로 배열할 것입니다. 첫 번째는 문자열인 키를 기반으로 하고 두 번째는 숫자인 키를 기반으로 합니다.

먼저 문자열 키 구성 요소부터 시작하겠습니다.

JavaScript에서 문자열 키로 ES6 맵 정렬

waqarMap이라는 새 변수를 만들고 Map() 클래스의 개체를 생성하여 초기화합니다.

var waqarMap = new Map();

이제 두 개의 매개변수를 사용하는 .set() 함수를 사용하여 일부 값을 지도에 추가합니다. 첫 번째 매개변수는 정렬을 수행하는 데 사용되는 키이고 두 번째 매개변수는 키 옆에 콘솔에 인쇄될 키의 값입니다.

이 시점에서 우리는 지도를 손에 들고 정렬할 준비가 되었습니다.

waqarMap.set('c', 'three');
waqarMap.set('e', 'five');
waqarMap.set('d', 'four');
waqarMap.set('b', 'two');
waqarMap.set('f', 'six');
waqarMap.set('a', 'one');

키가 문자열 값인 맵을 정렬하려면 sort() 함수를 사용하기만 하면 됩니다.

var sortedMap = new Map([...waqarMap].sort());

이제 맵이 정렬되었으므로 콘솔에 출력해야 합니다.

console.log(sortedMap);

문자열 키를 기준으로 오름차순으로 ES6 맵을 정렬하는 소스 코드

var waqarMap = new Map();

waqarMap.set('c', 'three');
waqarMap.set('e', 'five');
waqarMap.set('d', 'four');
waqarMap.set('b', 'two');
waqarMap.set('f', 'six');
waqarMap.set('a', 'one');

var sortedMap = new Map([...waqarMap].sort());

console.log(sortedMap);

오름차순 출력:

Map {
  'a' => 'one',
  'b' => 'two',
  'c' => 'three',
  'd' => 'four',
  'e' => 'five',
  'f' => 'six' }

.sort() 메서드를 적용할 때 여기서 .reverse().라는 또 다른 함수를 사용해야 합니다. Map을 내림차순으로 정렬하는 데 필요합니다.

이 단계를 제외하고 나머지 단계는 동일합니다.

var sortedMap = new Map([...waqarMap].sort().reverse());

내림차순 출력:

Map {
  'f' => 'six',
  'e' => 'five',
  'd' => 'four',
  'c' => 'three',
  'b' => 'two',
  'a' => 'one' }

JavaScript에서 숫자 키로 ES6 맵 정렬

numberMap,이라는 새 변수를 만든 다음 Map() 클래스의 개체를 생성하여 초기화합니다. .set() 함수를 사용하여 지도에 값을 추가합니다.

var numberMap = new Map();

numberMap.set('3', 'Nabeel');
numberMap.set('1', 'Saad');
numberMap.set('6', 'Khan');
numberMap.set('5', 'Sindhu');
numberMap.set('2', 'Aslam');
numberMap.set('4', 'Zeeshan');

여기에서 Map의 키는 숫자이고 sort() 메서드는 함수를 인수로 제공해야 합니다. 함수는 프로시저에 대한 인수로 전송되는 정렬 순서를 결정합니다.

var sortedMap = new Map([...numberMap.entries()].sort());
console.log(sortedMap);

숫자 키를 기준으로 오름차순으로 ES6 맵을 정렬하는 소스 코드

var numberMap = new Map();

numberMap.set('3', 'Nabeel');
numberMap.set('1', 'Saad');
numberMap.set('6', 'Khan');
numberMap.set('5', 'Sindhu');
numberMap.set('2', 'Aslam');
numberMap.set('4', 'Zeeshan');

var sortedMap = new Map([...numberMap.entries()].sort());

console.log(sortedMap);

오름차순 출력:

Map {
  '1' => 'Saad',
  '2' => 'Aslam',
  '3' => 'Nabeel',
  '4' => 'Zeeshan',
  '5' => 'Sindhu',
  '6' => 'Khan' }

데이터를 정렬된 순서와 반대 순서로 정렬하려면 .reverse()라는 다른 함수를 사용해야 합니다. 이 단계는 맵을 내림차순으로 정렬하는 데 필요하고 나머지는 동일하기 때문에 두 절차의 유일한 차이점입니다.

var sortedMap = new Map([...numberMap.entries()].sort().reverse());

내림차순 출력:

Map {
  '6' => 'Khan',
  '5' => 'Sindhu',
  '4' => 'Zeeshan',
  '3' => 'Nabeel',
  '2' => 'Aslam',
  '1' => 'Saad' }
작가: Saad Aslam
Saad Aslam avatar Saad Aslam avatar

I'm a Flutter application developer with 1 year of professional experience in the field. I've created applications for both, android and iOS using AWS and Firebase, as the backend. I've written articles relating to the theoretical and problem-solving aspects of C, C++, and C#. I'm currently enrolled in an undergraduate program for Information Technology.

LinkedIn

관련 문장 - JavaScript Map