1. 기호 데이터 유형
기호 데이터 유형이 ES6에 새로 추가되었습니다. [Symbol.iterator] 속성이 있는 Y 데이터 유형: array, array array, map, set,
[symbol.iterator]
속성 객체, 객체를 생성할 수 있습니다. Iterator
object[Symbol.iterator]
属性的对象,直接调用就可以生成一个Iterator
对象
二、Iterator对象:是一个指针对象,遍历器对象
方法:next():返回的格式为{value: ,done: }
使用for..of遍历: 每次遍历得到的是value值。
三、Geneteror
function* G(){ yield 200; yield 300; return 400; } var g=G();
1.Generator不是一个函数,定义generator时,使用function*,使用yield来返回结果。
2.调用Generator之后,它内部的代码不会立即执行,而是处于一个暂停的状态。并生成一个generator对象。
3.遇到yield
时,会执行yeild
后面的表达式,并返回执行之后的值,然后再次进入暂停状态,此时done: false
메소드 : next () : The 반환 형식은 {Value:, Done:}입니다.
For..of를 사용하여 순회합니다. 값 값은 각 순회에서 얻어집니다.
3. Geneterorrrreee
1. 제너레이터를 정의할 때 함수*와 Yield를 사용하여 결과를 반환합니다.
2. Generator를 호출한 후, 그 안의 코드는 즉시 실행되지 않고 정지 상태가 됩니다. 그리고 생성기 개체를 생성합니다.
3.
수익률
이 발생하면 수익률
이 실행 >다음 표현식을 실행하고 실행 후 값을 반환한 다음 다시 일시정지 상태로 진입합니다. 이때 done: false
Generator return 도 반복자 객체이므로 next 메소드인 for..of
를 사용할 수 있습니다. 1. next 메소드를 사용할 때 next의 매개변수는 실행된 Yield 이전의 값으로 전달됩니다. 2.yield*는 하나의 발전기에서 다른 발전기를 참조할 수 있습니다.
4. Generator는 비동기 작업을 구현합니다.
1. 하나의 매개변수인 콜백 함수만 사용하는 썽크 함수가 필요합니다.
2. co 라이브러리는 일반적으로 비동기 작업을 패키징하는 데 사용되므로 편리합니다. 그리고 간결합니다. 3.Yield 다음에는 썽크 기능이 와야 합니다.
위 내용은 JS에서 Generator를 비동기식으로 구현하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!