반복 메서드들은 조작 메서드와 달리 원본 배열을 변화시키지 않는다.
every(), filter(), forEach(), map(), some() 이 반복 메서드들은 두개의 인자를 받는데, 하나는 배열의 각 데이터에서 실행될 함수(콜백 함수)이고, 다른 하나는 함수를 실행할 스코프 객체(scope object) - this에 영향을 미침 - 이다.
반복 메서드의 콜백함수는 세가지 인자를 받는다.
1. 데이터
2. 데이터의 인덱스
3. 배열 자체
콜백 함수를 실행 했을때 반복 메서드의 반환 값에 어떤 영향을 미치는지는 메서드에 따라 다르다.
every() - 대상 배열의 모든 요소에 콜백함수를 수행시키고, 모든 요소가 true일 때, true를 반환한다.
some() - 대상 배열의 모든 요소에 콜백함수를 수행시키고, 모든 요소중 하나라도 true일때, true를 반환한다.
filter() - 대상 배열의 모든 요소에 콜백함수를 수행시키고, 조건에 맞는 데이터만 새 배열에 담아서 반환한다.
map() - 대상 배열의 모든 요소에 콜백함수를 수행시키고, 수행된 모든 데이터를 새 배열에 담아서 반환한다.
forEach() - 대상 배열의 모든 요소에 콜백함수를 수행시킨다. 반환값이 없다.