이 이야기를 하기전에 데이터는 주로 어디서부터 받아오게 되는것일까?
- 프로그램 자체에서 오는 데이터 : 우리가 소스코드로 작성한 곳에서 받게 되는 데이터이다.
- 유저에게서 오는 데이터 : 유저가 입력하는 데이터로부터 바다오게 된다.
- 외부 소스 : API와 같은 곳으로부터 데이터를 받아온다.
우리는 이렇게 받아온 데이터를 자바스크립트가 가진 4가지 데이터 구조를 가지고 저장한다. Array, Set, Object,Map이 있다. 그래서 우리는 데이터를 저장할 때마다, 어떤 방식을 선택할지 생각해야 한다.
이 4가지도 크게 1가지 기준으로 나눌 수 있는데, value를 설명하는 key가 필요하냐 필요하지 않느냐이다. key가 필요하지 않고 단순한 list만 필요하다면 array와 sets를 사용한다. value에 대한 설명이 필요하다면 object와 maps를 사용하면 된다.
그렇다면 이 기준으로 나눈 다음 각각의 저장방식의 특징을 알아보자.
value에 대한 설명이 필요하지 않다면 Array와 Sets를 이용하기.
Array :
array = ['code','data','structure']
- 순서가 필요한 value를 가질 때 사용한다.
- 데이터를 자유롭게 조작하고 싶을 때 사용한다.
Sets:
sets = new Set(['code','data','structure']);
- unique한 value를 다루고자 할 때, 사용한다.
- 반복적으로 다뤄진 value를 지우고자 할 때 사용한다.
[javascript] 배열(array)안에 반복된 내용을 제거하고 싶을 때는 set이용하기
value에 대한 설명(description)이 필요하다면 Object와 Maps를 이용하기
Objects:
objects = { task: 'code', date: 'mon',repeat: false };
- 전통적인 방식의 key/value 저장법이다.
- 데이터를 작성하고 접근하는 것이 쉽다. .와 []를 사용하기만 하면 된다.
- api를 이용할 때 잘 사용한다.
- 함수를 포함하고 있을 때, 사용하기 용이하다.
Maps:
maps = new Map([
['data','structure'],
['coding','funny'],
[true, 'coding is interesting!']
]);
- 더 나은 performance를 가진다.
- key는 string뿐만이 아닌 다양한 data type을 가질 수 있다.
- 단순히 key와 value를 엮고 싶을때 사용하면 좋다.
- key를 string이 아닌 다른 타입으로 사용하고 싶을 경우에 이용하면 된다.
'Javascript' 카테고리의 다른 글
[자바스크립트] 문자열에 특정 길이만큼 원하는 문자로 채우는 방법 (0) | 2021.05.18 |
---|---|
[자바스크립트] 문자열에서 특정요소를 제외하고 제거하기 (0) | 2021.05.18 |
[Javascript] parameter default 파라미터에 기본값 미리 설정하기(es6이후버전) (0) | 2021.05.04 |
[Javascript] map에 대하여 (0) | 2021.04.29 |
[javascript] 배열(array)안에 반복된 내용을 제거하고 싶을 때는 set이용하기 (0) | 2021.04.29 |