티스토리 뷰
반응형
Array의 요소(element)를 swap하는 방법
Array에서 두 요소(element)를 서로 바꾸고 싶을 경우, swap을 해야 하는데 javascript에는 별도의 swap 메서드가 없기 때문에 직접 사용해야 한다.
예를 들어, arr = [1, 2, 3, 4, 5] 배열에서 arr[1]과 arr[2]의 값을 서로 바꿔 [1, 3, 2, 4, 5]가 되도록 만들어보자.
● temp 변수 사용
가장 기본적인 방법이 temp 변수를 사용하는 것이다.
const arr = [1, 2, 3, 4, 5];
let temp = arr[1];
arr[1] = arr[2];
arr[2] = temp;
console.log(arr); // [1, 3, 2, 4, 5]
● 구조 분해 할당 사용
구조 분해 할당 구문은 배열이나 객체의 속성을 해체하여 그 값을 개별 변수에 담을 수 있게 하는 JavaScript 표현식이다.
구조 분해 할당을 사용하면 다음과 같은 방법으로 간단하게 swap이 가능하다.
const arr = [1, 2, 3, 4, 5];
[arr[1], arr[2]] = [arr[2], arr[1]];
console.log(arr); // [1, 3, 2, 4, 5]
단순히 2개의 대상만을 서로 swap하는 것이 아니라 사용자가 정의하는 대로 n개의 요소의 위치를 변경할 수 있다.
const arr = [1, 2, 3, 4, 5];
[arr[1], arr[2], arr[4]] = [arr[2], arr[4], arr[1]];
console.log(arr); // [1, 3, 5, 4, 2]
정리
swap 방법을 찾아보다가 구조 분해 할당이라는 것을 처음 접하게 되었는데, javascript에서 배열의 특정 요소를 바꿀 때 아주 편리한 것 같다.
참고 사이트
반응형
'프로그래밍 언어 > Node.js' 카테고리의 다른 글
[Node.js] javascript: 계수 정렬(counting sort)을 이용한 중간값(median) 구하는 함수 구현 (0) | 2021.06.17 |
---|---|
[Node.js] javascript: Array.reduce() 사용 방법 정리 (2) | 2021.04.21 |
[Node.js] javascript: 주어진 조건을 통과하는 배열 요소가 있는지 확인하는 Array.some() 사용법 (0) | 2021.03.05 |
[Node.js] Vue.js quasar에서 hydra Token 발급(POST /oauth2/token) 시 invalid_client 오류 발생 및 해결방법 (0) | 2020.11.10 |
[Node.js] Vue.js quasar에서 qs 설치 및 사용 방법 (0) | 2020.11.10 |
댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 코딜리티
- 블록체인
- Hyperledger Fabric v1.1
- 빅데이터
- Hyperledger Indy
- ambrosus
- ubuntu
- Private Data
- 빅데이터 기초
- docker
- 빅데이터 강의
- 빅데이터 교육
- 문제풀이
- Blockchain
- 블록 체인
- 코딩테스트
- 코테
- 직딩잇템
- 하이퍼레저 인디
- Hyperledger Fabric v1.2
- DOCs
- 어서와 데이터는 처음이지
- javascript
- Hyperledger Fabric
- 알고리즘
- 하이퍼레저 패브릭
- 기초 of 기초 데이터 개념
- 암브로셔스
- 하이퍼레저 페브릭
- codility
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
글 보관함