JavaScript
[Javascript] forEach(), for in 문, for of 문 특징과 비교
fnow
2021. 10. 22. 22:36
반응형
반복적인 동작을 하는 forEach() 메서드, for in 문, for of 문의 특징과 차이점에 대해 알아보도록 하겠다.
1. forEach()
forEach() 함수는 반복문 기능을 지닌 배열 메서드이다. 배열을 순회하며 모두 순회하면 실행을 멈춘다.
1
2
3
4
5
6
7
8
9
10
11
12
|
const data = [1, 3, null, undefined, NaN, ""];
data.forEach(item => {
console.log(item);
});
// 1
// 3
// null
// undefined
// NaN
//
|
cs |
2. for in 문
객체의 key를 순회하기 위해 사용되는 반복문이다. for in을 배열에 사용이 불가한 건 아니지만, 될 수 있으면 사용하지 않는 게 좋다. 상위에 prototype으로 추가해준 객체들까지 포함해서 나타내 준다. 아래 예시를 확인해보자.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
const data = [1, 3, null, undefined, NaN, ""];
Array.prototype.getIndex = function() {};
for (let idx in data) {
console.log(data[idx]);
}
// 1
// 3
// null
// undefined
// NaN
//
// function () {}
|
cs |
3. for of 문
for of는 이터러블(iterable)한 객체를 모두 순회할 수 있다. 배열만 순회할 수 있는 forEach()와는 다르게 for of는 문자열도 순회 가능하다.
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
|
const data = [1, 3, null, undefined, NaN, ""];
for (let value of data) {
console.log(value);
}
// 1
// 3
// null
// undefined
// NaN
//
const str = "Hello world!";
for (let value of str) {
console.log(value);
}
// H
// e
// l
// l
// o
//
// w
// o
// r
// l
// d
// !
|
cs |
반응형