es6의generator 상세
generator 소칼
generator: 생성기를 멈추고 복구할 수 있는 프로세스 (코드 세그먼트) 로 볼 수 있습니다. 코드가 실행되는 과정에서 주로 제어권인genearator 문법:function*은 생성기 함수에 사용할 새로운 키워드입니다. (생성기 방법도 있습니다.)yield는generator가 스스로 멈출 수 있는 연산자입니다.이 밖에generator는 yield를 통해 입력과 출력을 수신할 수 있습니다.
function* genFunc() {
// (A)
console.log('First');
yield;
console.log('Second');
}
const genObj = genFunc();
genObj.next();
// Output: First
genObj.next();
// output: Second
1. genFunc() , genObj
, A 。
2. genObj.next() ,
3. genFunc() yield
generator 함수의 다른 종류
function* genFunc() {
···
}
const genObj = genFunc();
const genFunc = function* () {
···
};
const genObj = genFunc();
const obj = {
* generatorMethod() {
···
}
};
const genObj = obj.generatorMethod();
class MyClass {
* generatorMethod() {
···
}
}
const myInst = new MyClass();
const genObj = myInst.generatorMethod();
사용 사례
이generator가 무슨 소용이 있느냐고 물었는데generator가 되돌아오는 대상은 교체할 수 있다.모든 생산량은 교체치의 서열에 도움이 된다.
function * objectEntries(obj){
const objKeys=Reflect.ownKeys(obj)
for(const objKey of objKeys){
yield [objKey,obj[objKey]]
}
}
const jane = { first: 'Jane', last: 'Doe' };
for (const [key,value] of objectEntries(jane)) {
console.log(`${key}: ${value}`);
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.