[JS] 자료 다루기
이채현
객체
Object.keys()
- 객체의 키들이다~~라는 느낌으로 객체의 키들이 배열로 반환된다.
1 | const object1 = { |
Object.values()
- 객체의 값들이다~~라는 느낌으로 객체의 Value들이 배열로 반환된다.
1 | const object1 = { |
Object.entries()
- 객체를 인자로 받아, key와 value를 쌍으로 가진 배열을 반환한다.
- for…in와 같은 순서로 주어진 객체 자체의 enumerable 속성을 가짐
- 인덱스마다 배열을 가져서, 첫번째가 key, 두번째가 value이다.
- 배열안에 배열
- 인덱스마다 배열을 가져서, 첫번째가 key, 두번째가 value이다.
1 | const object1 = { |
배열
요소 추가와 제거
unshift ⇒ 배열의 앞에 요소 추가
push ⇒ 배열의 끝에 요소 추가
shift ⇒ 배열의 앞에 요소 제거
pop ⇒ 배열의 끝에 요소 제거
splice ⇒ 배열의 인덱스를 기반으로 요소 추가 및 제거
1
2
3
4
5
6
7
8
9
10
11
12array.splice(start[, deleteCount[, item1[, item2[, ...]]]])
const months = ['Jan', 'March', 'April', 'June'];
months.splice(1, 0, 'Feb');
// inserts at index 1
console.log(months);
// expected output: Array ["Jan", "Feb", "March", "April", "June"]
months.splice(4, 1, 'May');
// replaces 1 element at index 4
console.log(months);
// expected output: Array ["Jan", "Feb", "March", "April", "May"]
요소 병합
- concat
1 | const array1 = ['a', 'b', 'c']; |
고차 함수로 조작 (내장 메서드)
- 대표적으로 map, filter, reduce
map
1 | const langs = ['JS', 'HTML', 'CSS']; |
filter
1 | const langs = ['JS', 'HTML', 'CSS', 0, 1, 2, 3]; |
reduce
- 그전에 전형적인 명령어 프로그래밍 방식
1 | // argument로 받거나 |
요소 정렬
sort
1 | const numbers = [4, 2, 5, 1, 3]; |
값 검색
1 | const strings = ['마', '가', '라', '나', '다']; |