사용을 제안하는 많은 질문을 보았습니다.
for (var i = 0; i < myArray.length; i++){ /* ... */ }
대신에:
for (var i in myArray){ /* ... */ }
일관되지 않은 반복으로 인해 배열의 경우 ( 여기 참조 ).
그러나 객체 지향 루프를 선호하는 것처럼 보이는 것을 찾을 수 없습니다.
myArray.forEach(function(item, index){ /* ... */ });
나에게 훨씬 더 직관적 인 것 같습니다.
현재 프로젝트의 경우 IE8 호환성이 중요하며 Mozilla의 polyfill 사용을 고려 하고 있지만 이것이 어떻게 작동하는지 100 % 확신하지는 않습니다.
- 표준 for 루프 (위의 첫 번째 예)와 최신 브라우저의 Array.prototype.forEach 구현간에 차이점이 있습니까?
- 최신 브라우저 구현과 위에 링크 된 Mozilla 구현 사이에 차이가 있습니까 (IE8과 관련하여)?
- 성능은 문제가 아니라 속성이 반복되는 일관성에 불과합니다.
break
나갈 수 없습니다forEach
. 그러나 큰 장점은 기능으로 새로운 범위를 만드는 것입니다. polyfill을 사용하면 문제가 없어야합니다 (적어도 나는 전혀 발생하지 않았습니다).