ECMAScript compatibility table에서 Edge 15 및 Edge 16이 for ... of
루프를 지원한다고 표시됩니다. 그러나노드 목록에서 'for ... of'을 사용할 때 Edge 15에서 오류가 발생 함
,이 코드를 실행하면
const list = document.querySelectorAll('[data-test]');
console.log(list);
for (const item of list) {
console.log(item);
}
<div data-test></div>
<div data-test></div>
<div data-test></div>
<div data-test></div>
<div data-test></div>
그것은 크롬과 파이어 폭스에서 작동하지만 가장자리있다. 대신 그것은 말합니다 :
개체가 속성 또는 메서드 'Symbol.iterator'를 지원하지 않습니다.
제가 이해하는 것처럼 NodeList
실제로 지원할 것입니다. 맞습니까?
여기 fildde 그것을 자신을 시도하고있다 : Test it online이
누군가가 문제 또는 여기에 실수를 설명 할 수 있습니까?
Edge는 'for ... of'을 지원합니다. 'NodeList's의 iterator를 지원하지 않는 것 같습니다. – JLRishe
polyfill로드를 고려해 보셨습니까? 이런 종류의 일은 그들이 최선의 것입니다. – loganfsmyth
@loganfsmyth 좋은 지적.또한 polyfill과 같은 제안 된 솔루션을 고려 중이지만이 특정 문제에 대해서만 설명합니다. – lampshade