이 글은 JavaScript에서 iterable을 위해 일반적으로 사용되는 몇 가지 순회 방법을 제공합니다. 이는 특정 참조 값을 가지고 있습니다. 도움이 필요한 친구들이 참고할 수 있기를 바랍니다.
es6에는 새로운 Map 및 Set 객체가 도입되었습니다. 배열은 첨자를 통해 탐색할 수 있지만 Map 및 Set 객체는 첨자를 통해 탐색할 수 없습니다. 컬렉션을 통합하기 위해 es는 새로운 iterable 유형을 도입했습니다. Array, Map 및 Set 유형은 모두 iterable에 속합니다.
일반적으로 사용되는 몇 가지 순회 방법에 대해 이야기해 보겠습니다.
1.for..in
var a = [1,2,3];for(var index in a ){ console.log(index); console.log(a[index]);}
위의 출력은 각각 0,1,2 1,2,3입니다
Array만이 for..in을 가질 수 있습니다. Map이나 Set 모두 사용할 수 없습니다. for..in은 인덱스를 순회합니다.
2.for..of
for(var x of a){ console.log(x);}
var d = new Set(['A', 'B', 'C']);for(var dd of d){ console.log(dd);}
for..of는 값을 순회합니다.
위 작업의 결과입니다.
for..of와 for..in
for..of의 차이점은 es6에서 새로 도입된 개념으로, 역사적 문제로 인해
for ... in
루프가 실제 traversal it 위는 객체의 속성 이름입니다. 배열
배열은 실제로 객체이며 각 요소의 인덱스는 속성으로 처리됩니다. for ... in
循环由于历史遗留问题,它遍历的实际上是对象的属性名称。一个Array
数组实际上也是一个对象,它的每个元素的索引被视为一个属性。
当我们手动给Array
对象添加了额外的属性后,for ... in
Array
개체에 추가 속성을 수동으로 추가하면 for ... in
루프가 예상치 못한 예상치 못한 효과를 가져옵니다:
var a = ['A', 'B', 'C']; a.name = 'Hello';for (var x in a) { console.log(x); // '0', '1', '2', 'name'3.foreach( ) 메서드
var d = new Set(['A', 'B', 'C']);for(var dd of d){ console.log(dd);}
var s2 = new Map([[1,'hxy'],[2,'yyw'],[3,'zzh']]);s2.forEach(function (value,key,map) { console.log(key+":"+value);})
위는 JavaScript에서 일반적으로 사용되는 여러 순회 방법에 대한 소개입니다. JavaScript 비디오 튜토리얼
에 대해 더 알고 싶다면 PHP 중국어 웹사이트에 주목하세요.위 내용은 자바스크립트에서 반복 가능을 위해 일반적으로 사용되는 몇 가지 순회 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!