배열이란 ?
- 복수의 자료를 저장할 수 있는 자료구조
- 인덱스를 가진다
- 중복된 데이터를 넣을 수 있다
1
2
3
4
5
6
7
8
9
10
11
// 길이 0 과 길이 5 인 배열 생성
const array0 = new Array();
const array1 = new Array(5);
// 배열 생성과 초기화
const array2 = new Array(1,2,'3',4,'5');
// literal notation
const array3 = []
const array4 = [1,2,'3',4,'5']
반복문
for 문
1
2
3
4
for (let i = 0; i < array.length; i++) {
// 배열 등을 돌며 작업
console.log(array[i])
}
while 문
1
2
3
4
5
6
let status = true
while (status) {
// 조건
// 작업
status = false
}
for of 문
1
2
3
4
const array = [0, 1, 2, 3, 4];
for (let number of array) {
console.log(number);
}
for in (객체를 위한 반복문)
객체를 배열로 변환하는 방법
1
2
3
4
5
6
7
8
9
10
11
12
const obj = {
key1: 'value',
key2: '123',
key3: 123
};
console.log(Object.entries(obj));
// [ [ 'key1', 'value' ], [ 'key2', '123' ], [ 'key3', 123 ] ]
console.log(Object.keys(obj));
// [ 'key1', 'key2', 'key3' ]
console.log(Object.values(obj));
// [ 'key1', 'key2', 'key3' ]
객체를 바로 반복문에 사용하는 방법
1
2
3
4
5
6
7
8
9
10
11
12
13
const obj = {
key1: 'value',
key2: '123',
key3: 123
};
// 객체의 키값이 순차적으로 불려온다
for (let n in obj) {
console.log(`${n}: ${obj[n]}`);
}
// key1: value
// key2: 123
// key3: 123
헷갈림 포인트
- return, break, continue
- return
- 함수에서 값을 반환할 값을 설정
- 함수가 종료됨
- break
- 해당 반복문을 종료
- 이중 반복문일 경우 부모 반목문은 유지
- continue
- 해당 반복문 자체는 유지된다
- 반복문의 내용을 skip 한다
- 다음 순서의 반복으로의 skip
- 예시를 확인해보자
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
function test () {
let result = 0
for (let i = 1; i <= 7; i++) {
if (i === 3) continue;
if (i === 6) break;
result += 1
console.log(i);
}
return result
}
console.log(test())
// 12454
// i = 3 은 continue에 걸려 그 뒤의 작업도 skip
// i = 6 은 break에 걸려 반복문이 종료
// 6과 7은 실행되지 않는다
// result는 1245 총 4번의 반복문을 돌아 4를 반환한다