JavaScript 학습 노트 7: iterable
4416 단어 Javascript
옮 겨 다 니 기
Array
는 아래 표 시 를 사용 할 수 있 고 옮 겨 다 니 기 Map
와 Set
는 아래 표 시 를 사용 할 수 없습니다.집합 유형 을 통일 하기 위해 ES6 기준 은 새로운 iterable
유형 을 도 입 했 고 Array
, Map
, Set
모두 iterable
유형 에 속한다.iterable
유형의 집합 은 새로운 for ... of
순환 을 통 해 옮 겨 다 닐 수 있다.for ... in
순환 은 역사 에 남 겨 진 문제 로 인해 실제 대상 의 속성 이름 을 옮 겨 다 닌 다.하나의 Array
배열 도 실제 적 으로 하나의 대상 이 고 모든 요소 의 색인 은 하나의 속성 으로 여 겨 진다.우리 가 수 동 으로
Array
대상 에 게 추가 속성 을 추가 하면 for ... in
순환 은 예상 치 못 한 의외 의 효 과 를 가 져 올 것 이다.var a = ['A', 'B', 'C'];
a.name = 'Hello';
for (var x in a) {
alert(x); // '0', '1', '2', 'name'
}
for ... in
순환 은 name
을 포함 하지만 Array
의 length
속성 은 포함 되 지 않 는 다.for ... of
순환 은 이러한 문 제 를 완전히 복 구 했 고 그 자체 의 요소 만 순환 했다.var a = ['A', 'B', 'C'];
a.name = 'Hello';
for (var x of a) {
alert(x); 'A', 'B', 'C'
}
그러나 더 좋 은 방법 은
iterable
내 장 된 forEach
방법 을 직접 사용 하 는 것 이다. 함 수 를 받 아들 이 고 매번 교체 할 때마다 이 함 수 를 자동 으로 되 돌려 주 는 것 이다.Array
을 예 로 들 면:var a = ['A', 'B', 'C'];
a.forEach(function (element, index, array) {
// element:
// index:
// array: Array
alert(element);
});
Set
는 Array
와 유사 하지만 Set
색인 이 없 기 때문에 리 셋 함수 의 앞의 두 매개 변 수 는 모두 요소 자체 입 니 다.var s = new Set(['A', 'B', 'C']);
s.forEach(function (element, sameElement, set) {
alert(element);
});
Map
의 리 턴 함수 인 자 는 value
, key
와 map
자체 이다.var m = new Map([[1, 'x'], [2, 'y'], [3, 'z']]);
m.forEach(function (value, key, map) {
alert(value);
});
일부 매개 변수 에 관심 이 없다 면 자바 스 크 립 트 의 함수 호출 은 매개 변수 가 일치 해 야 하지 않 기 때문에 무시 할 수 있 습 니 다.예 를 들 어
Array
의 element
만 얻 으 면 된다.var a = ['A', 'B', 'C'];
a.forEach(function (element) {
alert(element);
});
집합 요 소 를 옮 겨 다 니 는 방법
forEach
을 추천 합 니 다. 성능 이 가장 높 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
java,python,JavaScript 및 jquery 순환 문장의 차이2. 자바 순환 문장 조건 문장이 무엇이든지 간에 코드 블록은 최소한 한 번 실행되고do/while 순환을 사용할 수 있습니다.do/while 문법: 즉, 코드 블록을 먼저 집행한 다음에 조건이 성립되었는지 판단하고...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.