일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 테이블
- html
- 이탈리아
- table
- date
- vscode
- windows
- ArrayList
- Visual Studio Code
- CMD
- javascript
- 자바스크립트
- 배열
- Eclipse
- input
- Maven
- Files
- list
- Button
- IntelliJ
- json
- 이클립스
- CSS
- 문자열
- js
- Array
- 자바
- string
- 인텔리제이
- Java
- Today
- Total
어제 오늘 내일
[Javascript] Set 객체를 배열(Array)로 변환하는 3가지 방법 본문
Javascript에서 Set 객체는 중복 없는 데이터를 표현합니다.
이번에는 Set 객체를 배열(Array)로 변환하는 3가지 방법을 알아보도록 하겠습니다.
1. Array.from()
2. Spread Operator (전개 연산자)
3. forEach
1. Array.from()
Array.from 함수는
유사배열객체(array-like object)나 반복가능객체(iterable object)를 얕은 복사(shallow copy)하여
새로운 배열(Array) 객체를 만들어줍니다.
유사배열객체(array-like object) : length 속성과 index element를 가지는 객체
반복가능객체(iterable object) : 배열을 일반화한 객체 ex)Map, Set
const set = new Set([1, 2, 3]);
const arr = Array.from(set);
document.write(Array.isArray(arr));
document.write('<br>');
document.write(arr);
위 예제에서는 Set 객체를 Array.from() 함수를 사용하여 배열로 변환한 후,
리턴받은 값이 배열인지 Array.isArray() 함수를 사용하여 확인하고,
리턴받은 값(배열)을 출력하였습니다.
2. Spread Operator (전개 연산자)
Spread Operator는 ES6의 문법으로
배열이나 문자열과 같이 반복가능한 객체를 하나씩 펼쳐서 리턴합니다.(전개)
'...'과 같이 점 3개로 표시합니다.
const set = new Set([1, 2, 3]);
const arr = [...set];
document.write(Array.isArray(arr));
document.write('<br>');
document.write(arr);
const arr = [...set];
Spread Operator(전개연산자) '...'을 사용하여 Set 객체의 값들을 하나씩 전개하여(꺼내서),
새로운 배열의 원소로 넣어서, arr 변수에 저장하였습니다.
3. forEach
마지막 방법은 반복문을 이용하는 방법입니다.
const set = new Set([1, 2, 3]);
const arr = [];
set.forEach((element) => {
arr.push(element);
})
document.write(Array.isArray(arr));
document.write('<br>');
document.write(arr);
forEach문과 Array의 push() 함수를 사용하여
Set 객체를 새로운 배열로 변환하였습니다.
Array.from(), Spread Operator(전개연산자), forEach문을 이용하여
Set 객체를 배열(Array)로 변환하는 방법을 알아보았습니다.
'IT > Javascript' 카테고리의 다른 글
[Javascript] 배열에서 빈값 제거하기 (0) | 2020.11.08 |
---|---|
[Javascript] 배열 중복 제거하는 3가지 방법 (3) | 2020.10.21 |
[Javascript] 객체에 특정 속성이 존재하는지 체크하는 3가지 방법 (0) | 2020.10.19 |
[Javascript] 배열 초기화(빈 배열로)하는 4가지 방법 (0) | 2020.10.17 |
[Javascript] forEach에서 continue 구현하기 (0) | 2020.10.17 |