728x90
서론
자바스크립트를 이용하여 반복문 문제를 풀 때 forEach, for ... in, for ... of가 유용하게 쓰인다. 물론 자바스크립트에는 이 외에도 우리가 잘 알고 있는 for문, while문, do while문 등등의 다양한 반복문이 존재한다. 그 중에서도 비슷하면서도 헷갈리는 것들의 차이가 뭘까 궁금해졌다.
본론
forEach
- 오직 배열에서만 사용가능한 메소드
- 인자로 callback 함수를 쓸 수 있음
- (주의) forEach의 E는 꼭 대문자로 써야 함
const ex = ['ex1', 'ex2', 'ex3']; ex.forEach(function(i) { console.log(i); }); //결과: ex1 ex2 ex3
for ... in
- 객체의 반복에서 사용되는 메소드
const user = { name: 'goni', age: 5 } for (let key in user) { console.log(key); console.log(user[key]); } //결과: name goni age 5
for ... of
- 배열의 반복에서 사용되는 메소드
- forEach와의 차이점은 배열 외에도 많은 객체에서 쓸 수 있다는 것과 인자로 callback함수를 쓸 수 없다는 것
const ex = ['ex1', 'ex2', 'ex3']; for (let i of ex) { console.log(i); } //결과: ex1 ex2 ex3
'Web FrontEnd > JavaScript' 카테고리의 다른 글
[문법] slice() 함수 / JavaScript (0) | 2022.02.12 |
---|---|
[문법] filter() , map() , reduce () 함수 / JavaScript (0) | 2022.01.11 |