A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from http://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/String/Symbol.iterator below:

String.prototype[@@iterator]() - JavaScript | MDN

String.prototype[@@iterator]()

Baseline Widely available

String의 [@@iterator]() 메서드는 순회 프로토콜을 구현하여 전개 구문 및 for...of 루프와 같이 반복자를 기대하는 대부분의 구문에서 문자열을 사용할 수 있게 합니다. 문자열 값의 유니코드 코드 포인트를 개별 문자열로 산출하는 문자열 반복자 객체를 반환합니다.

시도해 보기
const str = "The quick red fox jumped over the lazy dog's back.";

const iterator = str[Symbol.iterator]();
let theChar = iterator.next();

while (!theChar.done && theChar.value !== " ") {
  console.log(theChar.value);
  theChar = iterator.next();
  // Expected output: "T"
  //                  "h"
  //                  "e"
}
구문
string[Symbol.iterator]()
매개변수

없음.

반환 값

문자열 값의 유니코드 코드 포인트를 개별 문자열로 산출하는 새로운 문자열 반복자 객체.

설명

문자열은 유니코드 코드 포인트로 순회됩니다. 즉, 그래프 클러스터는 분할되지만 서로게이트는 유지됩니다.

// "집게손가락으로 오른쪽을 가리키는 손등: 어두운 피부 톤"은
[..."👉🏿"]; // ['👉', '🏿']
// "집게손가락으로 오른쪽을 가리키는 손등" 이모지와 "어두운 피부 톤" 이모지로 분리할 수 있습니다.

// "Family: Man, Boy"
[..."👨‍👦"]; // [ '👨', '‍', '👦' ]
// "Man"과 "Boy" 이모지로 나눠지고 ZWJ로 합쳐집니다.
예제 for...of 반복를 사용한 순회

이 메서드를 직접 호출할 필요는 거의 없습니다. @@iterator 메서드가 존재하기 때문에 문자열 iterable과 for...of 같은 반복 구문은 자동으로 이 메서드를 호출하여 반복할 반복자를 얻습니다.

const str = "A\uD835\uDC68B\uD835\uDC69C\uD835\uDC6A";

for (const v of str) {
  console.log(v);
}
// "A"
// "\uD835\uDC68"
// "B"
// "\uD835\uDC69"
// "C"
// "\uD835\uDC6A"
반복자 수동으로 돌리기

반환된 반복자 객체의 next() 메서드를 수동으로 호출하여 반복 프로세스를 최대한 제어할 수 있습니다.

const str = "A\uD835\uDC68";

const strIter = str[Symbol.iterator]();

console.log(strIter.next().value); // "A"
console.log(strIter.next().value); // "\uD835\uDC68"
명세서 브라우저 호환성 같이 보기

RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4