?um/p1-90`interface는 associated values가 specific specification과 match하는
iterable interface는
| Property | Value | Requirements |
|---|---|---|
%Symbol.iterator%
|
|
반환된 object는 |
iterator interface를 implement하는 object는
| Property | Value | Requirements |
|---|---|---|
|
|
|
반환된 object는 next method에 대한 previous call이 next method에 대한 모든 subsequent calls도 |
arguments는 next function에 passed될 수 있지만, 그 interpretation과 validity는 target iterator에 dependent합니다. for-of statement와 iterators의 other common users는 어떤 arguments도 pass하지 않으므로, 그러한 방식으로 사용될 것으로 expect되는 iterator objects는 arguments 없이 called되는 것을 deal할 준비가 되어 있어야 합니다.
| Property | Value | Requirements |
|---|---|---|
|
|
|
반환된 object는 next method calls를 make할 intention이 없음을 return method의 argument로 passed된 value를 가진 |
|
|
|
반환된 object는 throw하는 것입니다. method가 throw하지 않으면, 반환된 |
Typically 이 methods의 callers는 invoking하기 전에 their existence를 check해야 합니다. for-of, yield*, 및 array destructuring을 포함한 certain ECMAScript language features는 existence check를 수행한 후 이 methods를 call합니다.
async iterable interface는
| Property | Value | Requirements |
|---|---|---|
%Symbol.asyncIterator% |
반환된 object는 |
async iterator interface를 implement하는 object는
| Property | Value | Requirements |
|---|---|---|
|
반환된 promise는 fulfilled될 때 Additionally, fulfillment value로 serves하는 |
arguments는 next function에 passed될 수 있지만, 그 interpretation과 validity는 target async iterator에 dependent합니다. for-await-of statement와 async iterators의 other common users는 어떤 arguments도 pass하지 않으므로, 그러한 방식으로 사용될 것으로 expect되는 async iterator objects는 arguments 없이 called되는 것을 deal할 준비가 되어 있어야 합니다.
| Property | Value | Requirements |
|---|---|---|
|
반환된 promise는 fulfilled될 때 Additionally, fulfillment value로 serves하는 |
||
|
반환된 promise는 fulfilled될 때 반환된 promise가 fulfilled되면, |
Typically 이 methods의 callers는 invoking하기 전에 their existence를 check해야 합니다. for-await-of와 yield*를 포함한 certain ECMAScript language features는 existence check를 수행한 후 이 methods를 call합니다.
IteratorResult interface는
| Property | Value | Requirements |
|---|---|---|
|
|
Boolean |
이는 next method call의 result status입니다. |
|
|
|
done이 |
Iterator Helper object는 some specific source
%IteratorHelperPrototype% object는:
이 property는 attributes { [[Writable]]:
Iterator
이 function은 called될 때 다음 steps를 수행합니다:
%WrapForValidIteratorPrototype% object는:
Iterator.prototype의 initial value는
이 property는 attributes { [[Writable]]:
이 function은 called될 때 다음 steps를 수행합니다:
이 function은 called될 때 다음 steps를 수행합니다:
Iterator prototype object는:
이 specification에서
다음 expression은 ECMAScript code가 %Iterator.prototype% object에 access할 수 있는 one way입니다:
Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()))
Iterator.prototype.constructor는 attributes { [[Enumerable]]:
[[Get]] attribute의 value는 arguments를 require하지 않는 built-in function입니다. called될 때 다음 steps를 수행합니다:
[[Set]] attribute의 value는 argument v를 takes하는 built-in function입니다. called될 때 다음 steps를 수행합니다:
most built-in prototypes의
이 method는 called될 때 다음 steps를 수행합니다:
이 method는 called될 때 다음 steps를 수행합니다:
이 method는 called될 때 다음 steps를 수행합니다:
이 method는 called될 때 다음 steps를 수행합니다:
이 method는 called될 때 다음 steps를 수행합니다:
이 method는 called될 때 다음 steps를 수행합니다:
이 method는 called될 때 다음 steps를 수행합니다:
이 method는 called될 때 다음 steps를 수행합니다:
이 method는 called될 때 다음 steps를 수행합니다:
이 method는 called될 때 다음 steps를 수행합니다:
이 method는 called될 때 다음 steps를 수행합니다:
이 메서드는 호출될 때 다음 단계를 수행한다:
이 메서드의
이 function은 called될 때 다음 steps를 수행합니다:
이 function의
Iterator.prototype[%Symbol.toStringTag%]는 attributes { [[Enumerable]]:
[[Get]] attribute의 value는 arguments를 require하지 않는 built-in function입니다. called될 때 다음 steps를 수행합니다:
[[Set]] attribute의 value는 argument v를 takes하는 built-in function입니다. called될 때 다음 steps를 수행합니다:
most built-in prototypes의
The abstract operation IteratorZip takes arguments iters (a
%AsyncIteratorPrototype% object는:
이 specification에서
이 메서드는 호출될 때 다음 단계를 수행한다:
이 메서드의
이 function은 called될 때 다음 steps를 수행합니다:
이 function의
Async-from-Sync Iterator object는 specific synchronous
The abstract operation CreateAsyncFromSyncIterator takes argument syncIteratorRecord (an
%AsyncFromSyncIteratorPrototype% object는:
throw method를 가지지 않으면, capability를 reject하기 전에 cleanup할 chance를 주기 위해 it을 close한다.throw method를 가지지 않는다.Async-from-Sync
| Internal Slot | Type | Description |
|---|---|---|
| [[SyncIteratorRecord]] |
|
adapted되고 있는 original synchronous |
The abstract operation AsyncFromSyncIteratorContinuation takes arguments result (an Object), promiseCapability (a
Disposable 인터페이스에는
| 속성 | 값 | 요구사항 |
|---|---|---|
%Symbol.dispose%
|
함수 객체 |
이 메서드를 호출하면 호출자가 이 객체를 계속 사용할 의도가 없음을 같은 객체에 대해 이 메서드를 두 번 이상 호출하는 경우, 이미 폐기된 리소스에 대해 정리 로직을 반복하지 않아야 하며, 첫 번째 호출에서 예외가 던져졌더라도 예외를 던지지 않아야 한다. 그러나 이 요구사항은 강제되지 않는다.
|
AsyncDisposable 인터페이스에는
| 속성 | 값 | 요구사항 |
|---|---|---|
%Symbol.asyncDispose%
|
promise를 반환하는 함수 객체 |
이 메서드를 호출하면 호출자가 이 객체를 계속 사용할 의도가 없음을 같은 객체에 대해 이 메서드를 두 번 이상 호출하는 경우, 이미 폐기된 리소스에 대해 정리 로직을 반복하지 않아야 하며, 첫 번째 호출에서 예외가 던져졌거나 거부된 promise가 반환되었더라도 예외를 던지거나 거부된 promise를 반환하지 않아야 한다. 그러나 이 요구사항은 강제되지 않는다.
|
DisposableStack은 함께 폐기되어야 하는 하나 이상의 리소스를 담는 데 사용할 수 있는 객체이다.
모든 DisposableStack 객체는 서로 배타적인 두 상태 중 하나, 즉 disposed 또는 pending 상태에 있다. disposable stack d에 대해 d.dispose()와 d.move()가 모두 호출되지 않은 경우에만 d는 pending이다.
DisposableStack 생성자는 다음과 같다:
extends 절에서 값으로 사용할 수 있다. 지정된 DisposableStack 동작을 상속하려는 하위 클래스 생성자는 DisposableStack.prototype의 내장 메서드를 지원하는 데 필요한 내부 상태로 하위 클래스 인스턴스를 생성하고 초기화하기 위해 DisposableStack 생성자에 대한 super 호출을 포함해야 한다.이 함수는 호출될 때 다음 단계를 수행한다:
DisposableStack 생성자는 다음과 같다:
DisposableStack.prototype의 초기값은
이 속성은 { [[Writable]]:
DisposableStack 프로토타입 객체는 다음과 같다:
이 메서드는 호출될 때 다음 단계를 수행한다:
DisposableStack.prototype.constructor의 초기값은
이 메서드는 호출될 때 다음 단계를 수행한다:
이 메서드는 호출될 때 다음 단계를 수행한다:
DisposableStack.prototype.disposed는 set 접근자 함수가
이 메서드는 호출될 때 다음 단계를 수행한다:
이 메서드는 호출될 때 다음 단계를 수행한다:
%Symbol.dispose% 속성의 초기값은
%Symbol.toStringTag% 속성의 초기값은 String 값
이 속성은 { [[Writable]]:
DisposableStack 인스턴스는
| 내부 슬롯 | 타입 | 설명 |
|---|---|---|
| [[DisposableState]] |
|
disposable stack이 자신의 %Symbol.dispose% 메서드에 대한 들어오는 호출에 어떻게 반응할지를 지배한다.
|
| [[DisposableResourceStack]] |
|
disposable stack이 폐기될 때 폐기될 리소스. 리소스는 초기화된 순서대로 추가되고, 역순으로 폐기된다. |
AsyncDisposableStack은 함께 비동기적으로 폐기되어야 하는 하나 이상의 리소스를 담는 데 사용할 수 있는 객체이다.
모든 AsyncDisposableStack 객체는 서로 배타적인 두 상태 중 하나, 즉 disposed 또는 pending 상태에 있다. async-disposable stack d에 대해 d.disposeAsync()와 d.move()가 모두 호출되지 않은 경우에만 d는 pending이다.
AsyncDisposableStack 생성자는 다음과 같다:
extends 절에서 값으로 사용할 수 있다. 지정된 AsyncDisposableStack 동작을 상속하려는 하위 클래스 생성자는 AsyncDisposableStack.prototype의 내장 메서드를 지원하는 데 필요한 내부 상태로 하위 클래스 인스턴스를 생성하고 초기화하기 위해 AsyncDisposableStack 생성자에 대한 super 호출을 포함해야 한다.이 함수는 호출될 때 다음 단계를 수행한다:
AsyncDisposableStack 생성자는 다음과 같다:
AsyncDisposableStack.prototype의 초기값은
이 속성은 { [[Writable]]:
AsyncDisposableStack 프로토타입 객체는 다음과 같다:
이 메서드는 호출될 때 다음 단계를 수행한다:
AsyncDisposableStack.prototype.constructor의 초기값은
이 메서드는 호출될 때 다음 단계를 수행한다:
이 async 메서드는 호출될 때 다음 단계를 수행한다:
AsyncDisposableStack.prototype.disposed는 set 접근자 함수가
이 메서드는 호출될 때 다음 단계를 수행한다:
이 메서드는 호출될 때 다음 단계를 수행한다:
%Symbol.asyncDispose% 속성의 초기값은
%Symbol.toStringTag% 속성의 초기값은 String 값
이 속성은 { [[Writable]]:
AsyncDisposableStack 인스턴스는
| 내부 슬롯 | 타입 | 설명 |
|---|---|---|
| [[AsyncDisposableState]] |
|
disposable stack이 자신의 %Symbol.asyncDispose% 메서드에 대한 들어오는 호출에 어떻게 반응할지를 지배한다.
|
| [[DisposableResourceStack]] |
|
disposable stack이 폐기될 때 폐기될 리소스. 리소스는 초기화된 순서대로 추가되고, 역순으로 폐기된다. |
Promise는 deferred된(그리고 possibly asynchronous인) computation의 eventual results에 대한 placeholder로 사용되는 object입니다.
모든 Promise는 mutually exclusive한 세 states 중 하나입니다: fulfilled, rejected, 그리고 pending:
p는 p.then(f, r)가 function f를 call하는 p는 p.then(f, r)가 function r를 call하는 promise는 pending이 아니면, 즉 fulfilled 또는 rejected이면 settled라고 합니다.
promise는 settled되었거나 다른 promise의 state와 match하도록 “locked in”된 경우 resolved입니다. resolved promise를 resolve 또는 reject하려는 시도는 effect가 없습니다. promise는 resolved가 아니면 unresolved입니다. unresolved promise는 항상 pending state입니다. resolved promise는 pending, fulfilled 또는 rejected일 수 있습니다.
PromiseCapability Record는 Promise 또는 promise-like object를 그 promise를 resolve하거나 reject할 수 있는 functions와 함께 encapsulate하는 데 사용되는
PromiseCapability Records는
| Field Name | Value | Meaning |
|---|---|---|
| [[Promise]] | Object | promise로 usable한 object. |
| [[Resolve]] |
|
주어진 promise를 resolve하는 데 사용되는 function. |
| [[Reject]] |
|
주어진 promise를 reject하는 데 사용되는 function. |
IfAbruptRejectPromise는
는 다음과 same thing을 의미합니다:
PromiseReaction Record는 promise가 주어진 value로 resolved 또는 rejected될 때 어떻게 react해야 하는지에 대한 information을 store하는 데 사용되는
PromiseReaction Records는
| Field Name | Value | Meaning |
|---|---|---|
| [[Capability]] |
|
이 record가 reaction handler를 제공하는 promise의 capabilities. |
| [[Type]] |
|
[[Type]]은 [[Handler]]가 |
| [[Handler]] |
|
incoming value에 applied되어야 하는 function이며, 그 return value가 derived promise에 무슨 일이 일어나는지를 govern합니다. [[Handler]]가 |
The abstract operation CreateResolvingFunctions takes argument toResolve (a Promise) and returns a
The abstract operation FulfillPromise takes arguments promise (a Promise) and value (an
The abstract operation NewPromiseCapability takes argument ctor (an resolve 및 reject functions를 extract하려고 attempts합니다. promise와 resolve 및 reject functions는 new
이 abstract operation은 Promise subclassing을 support합니다. 이는 Promise
The abstract operation IsPromise takes argument arg (an
The abstract operation RejectPromise takes arguments promise (a Promise) and reason (an
The abstract operation TriggerPromiseReactions takes arguments reactions (a
The
HostPromiseRejectionTracker의 default implementation은
HostPromiseRejectionTracker는 두 scenarios에서 called됩니다:
HostPromiseRejectionTracker의 typical implementation은 unhandled rejections를 developers에게 notify하려고 시도할 수 있으며, 그러한 previous notifications가 later new handlers being attached에 의해 invalidated되면 also notify하도록 careful할 수 있습니다.
operation이
The abstract operation NewPromiseReactionJob takes arguments reaction (a
The abstract operation NewPromiseResolveThenableJob takes arguments promiseToResolve (a Promise), thenable (an Object), and then (a
Promise
extends 절의 값으로 사용될 수 있다. 지정된 Promise 동작을 상속하려는 서브클래스 생성자는 Promise 및 Promise.prototype의 내장 메서드를 지원하는 데 필요한 내부 상태로 서브클래스 인스턴스를 생성하고 초기화하기 위해 Promise 생성자에 대한 super 호출을 포함해야 한다.이 function은 called될 때 다음 steps를 수행합니다:
executor argument는
executor function에 passed되는 resolve function은 single argument를 accepts합니다. executor code는 eventually associated Promise를 resolve하기 원함을 indicate하기 위해 resolve function을 call할 수 있습니다. resolve function에 passed되는 argument는 deferred action의 eventual value를 represent하며, actual fulfillment value 또는 fulfilled될 경우 value를 provide할 another promise일 수 있습니다.
executor function에 passed되는 reject function은 single argument를 accepts합니다. executor code는 associated Promise가 rejected되며 결코 fulfilled되지 않음을 indicate하기 위해 reject function을 eventually call할 수 있습니다. reject function에 passed되는 argument는 promise의 rejection value로 used됩니다. Typically Error object입니다.
Promise
Promise
이 function은 passed promises의 fulfillment values array로 fulfilled되는 new promise를 반환하거나, rejects하는 first passed promise의 reason으로 rejects합니다. 이 algorithm을 run하면서 passed
이 function은 its
The abstract operation GetPromiseResolve takes argument promiseCtor (a
The abstract operation PerformPromiseAll takes arguments iteratorRecord (an
이 function은 original promises가 모두 settled될 때, 즉 fulfilled 또는 rejected 중 하나가 될 때만 promise state snapshots의 array로 fulfilled되는 promise를 반환합니다. 이 algorithm을 run하면서 passed
이 function은 its
The abstract operation PerformPromiseAllSettled takes arguments iteratorRecord (an
이 function은 fulfilled되는 first given promise에 의해 fulfilled되거나, given promises가 모두 rejected되면 rejection reasons를 holding하는 AggregateError로 rejected되는 promise를 반환합니다. 이 algorithm을 run하면서 passed
이 function은 its Promise
The abstract operation PerformPromiseAny takes arguments iteratorRecord (an
Promise.prototype의 initial value는
이 property는 attributes { [[Writable]]:
이 function은 settle되는 first passed promise와 same way로 settled되는 new promise를 반환합니다. 이 algorithm을 run하면서 passed iterable의 모든 elements를 promises로 resolves합니다.
iterable argument가 no values를 yield하거나 iterable에 의해 yielded된 promises 중 none이 ever settle하지 않으면, 이 method가 반환하는 pending promise는 never settled됩니다.
이 function은 its resolve method를 provide할 것을 expects합니다.
The abstract operation PerformPromiseRace takes arguments iteratorRecord (an
이 function은 passed argument로 rejected된 new promise를 반환합니다.
이 function은 its
이 function은 passed argument로 resolved된 new promise를 반환하거나, argument가 this
이 function은 its
The abstract operation PromiseResolve takes arguments ctor (an Object) and resolution (an
이 function은 called될 때 다음 steps를 수행합니다:
이 function은 its
이 function은 세 properties를 가진 object를 반환합니다: new promise와 그에 associated된 resolve 및 reject functions.
Promise[%Symbol.species%]는 set accessor function이
이 function의
Promise prototype methods는 normally derived object를 create하기 위해 their
Promise prototype object는:
이 method는 called될 때 다음 steps를 수행합니다:
Promise.prototype.constructor의 initial value는
이 method는 called될 때 다음 steps를 수행합니다:
이 method는 called될 때 다음 steps를 수행합니다:
The abstract operation PerformPromiseThen takes arguments promise (a Promise), onFulfilled (an
이 property는 attributes { [[Writable]]:
Promise instances는
| Internal Slot | Type | Description |
|---|---|---|
| [[PromiseState]] |
|
promise가 its then method에 대한 incoming calls에 어떻게 react할지를 governs합니다.
|
| [[PromiseResult]] |
|
promise가 fulfilled 또는 rejected된 value, if any. [[PromiseState]]가 |
| [[PromiseFulfillReactions]] |
|
promise가 |
| [[PromiseRejectReactions]] |
|
promise가 |
| [[PromiseIsHandled]] | Boolean | promise가 fulfillment 또는 rejection handler를 ever had했는지를 indicates합니다; unhandled rejection tracking에 used됩니다. |
GeneratorFunctions는 보통
GeneratorFunction
Function의 subclass입니다.GeneratorFunction (…)은 같은 arguments를 가진 object creation expression new GeneratorFunction (…)과 동등합니다.extends clause의 value로 사용될 수 있습니다. 지정된 GeneratorFunction behaviour를 상속하려는 subclass super call을 포함해야 합니다. generator 마지막 argument(있다면)는 generator function의 body(executable code)를 지정하고, preceding arguments는 formal parameters를 지정합니다.
이 function은 호출될 때 다음 steps를 수행합니다:
GeneratorFunction
GeneratorFunction.prototype의 initial value는
이 property는 attributes { [[Writable]]:
GeneratorFunction prototype object는:
GeneratorFunction.prototype.constructor의 initial value는
이 property는 attributes { [[Writable]]:
GeneratorFunction.prototype.prototype의 initial value는
이 property는 attributes { [[Writable]]:
이 property는 attributes { [[Writable]]:
모든 GeneratorFunction instance는 ECMAScript
각 GeneratorFunction instance는 다음 own properties를 가집니다:
GeneratorFunction instance가 생성될 때마다 또 다른
이 property는 attributes { [[Writable]]:
Function instances와 달리, GeneratorFunction의
AsyncGeneratorFunctions는 보통
AsyncGeneratorFunction
Function의 subclass입니다.AsyncGeneratorFunction (...)은 같은 arguments를 가진 object creation expression new AsyncGeneratorFunction (...)과 동등합니다.extends clause의 value로 사용될 수 있습니다. 지정된 AsyncGeneratorFunction behaviour를 상속하려는 subclass super call을 포함해야 합니다. async generator 마지막 argument(있다면)는 async generator function의 body(executable code)를 지정하고, preceding arguments는 formal parameters를 지정합니다.
이 function은 호출될 때 다음 steps를 수행합니다:
AsyncGeneratorFunction
AsyncGeneratorFunction.prototype의 initial value는
이 property는 attributes { [[Writable]]:
AsyncGeneratorFunction prototype object는:
AsyncGeneratorFunction.prototype.constructor의 initial value는
이 property는 attributes { [[Writable]]:
AsyncGeneratorFunction.prototype.prototype의 initial value는
이 property는 attributes { [[Writable]]:
이 property는 attributes { [[Writable]]:
모든 AsyncGeneratorFunction instance는 ECMAScript
각 AsyncGeneratorFunction instance는 다음 own properties를 가집니다:
이 property는 attributes { [[Writable]]:
AsyncGeneratorFunction instance가 생성될 때마다 또 다른
이 property는 attributes { [[Writable]]:
function instances와 달리, AsyncGeneratorFunction의
Generator는 generator function을 호출하여 생성되며
Generator instances는 instance를 생성한 generator function의
%GeneratorPrototype% object는:
.constructor의 initial value는
이 property는 attributes { [[Writable]]:
이 method는 호출될 때 다음 steps를 수행합니다:
이 method는 호출될 때 다음 steps를 수행합니다:
이 property는 attributes { [[Writable]]:
Generator instances는
| Internal Slot | Type | Description |
|---|---|---|
| [[GeneratorState]] |
|
generator의 current execution state. |
| [[GeneratorContext]] |
|
이 generator의 code를 executing할 때 사용되는 |
| [[GeneratorBrand]] |
String 또는 |
different kinds of generators를 distinguish하기 위해 사용되는 brand. |
The abstract operation GeneratorStart takes arguments gen (a Generator) and genBody (a
The abstract operation GeneratorValidate takes arguments gen (an
The abstract operation GeneratorResume takes arguments gen (an
The abstract operation GeneratorResumeAbrupt takes arguments gen (an
The abstract operation GetGeneratorKind takes no arguments and returns
The abstract operation GeneratorYield takes argument iteratorResult (an Object that conforms to the
The abstract operation Yield takes argument arg (an
The abstract operation CreateIteratorFromClosure takes arguments closure (an
AsyncGenerator는 async generator function을 호출하여 생성되며
AsyncGenerator instances는 instance를 생성한 async generator function의
%AsyncGeneratorPrototype% object는:
.constructor의 initial value는
이 property는 attributes { [[Writable]]:
이 property는 attributes { [[Writable]]:
AsyncGenerator instances는 아래에 described된 internal slots로 initially created됩니다:
| Internal Slot | Type | Description |
|---|---|---|
| [[AsyncGeneratorState]] | async generator의 current execution state. | |
| [[AsyncGeneratorContext]] | 이 async generator의 code를 executing할 때 사용되는 |
|
| [[AsyncGeneratorQueue]] | async generator를 resume하기 위한 requests를 represent하는 |
|
| [[GeneratorBrand]] | String 또는 |
different kinds of async generators를 distinguish하기 위해 사용되는 brand. |
AsyncGeneratorRequest는 async generator가 어떻게 resumed되어야 하는지에 대한 information을 store하고, corresponding promise를 fulfilling하거나 rejecting하기 위한 capabilities를 contain하는 데 사용되는
이는 다음 fields를 가집니다:
| Field Name | Value | Meaning |
|---|---|---|
| [[Completion]] | async generator를 resume하기 위해 사용되어야 하는 |
|
| [[Capability]] | 이 request와 associated된 promise capabilities. |
The abstract operation AsyncGeneratorStart takes arguments gen (an AsyncGenerator) and genBody (a
The abstract operation AsyncGeneratorValidate takes arguments gen (an
The abstract operation AsyncGeneratorEnqueue takes arguments gen (an AsyncGenerator), completion (a
The abstract operation AsyncGeneratorCompleteStep takes arguments gen (an AsyncGenerator), completion (a
The abstract operation AsyncGeneratorResume takes arguments gen (an AsyncGenerator) and completion (a
The abstract operation AsyncGeneratorUnwrapYieldResumption takes argument resumptionValue (a
The abstract operation AsyncGeneratorYield takes argument arg (an
The abstract operation AsyncGeneratorAwaitReturn takes argument gen (an AsyncGenerator) and returns
The abstract operation AsyncGeneratorDrainQueue takes argument gen (an AsyncGenerator) and returns
AsyncFunctions는 보통
AsyncFunction
Function의 subclass입니다.AsyncFunction(…)은 같은 arguments를 가진 object creation expression new AsyncFunction(…)과 동등합니다.extends clause의 value로 사용될 수 있습니다. 지정된 AsyncFunction behaviour를 상속하려는 subclass super call을 포함해야 합니다. async 마지막 argument(있다면)는 async function의 body(executable code)를 지정합니다. preceding arguments는 formal parameters를 지정합니다.
이 function은 호출될 때 다음 steps를 수행합니다:
AsyncFunction
AsyncFunction.prototype의 initial value는
이 property는 attributes { [[Writable]]:
AsyncFunction prototype object는:
AsyncFunction.prototype.constructor의 initial value는
이 property는 attributes { [[Writable]]:
이 property는 attributes { [[Writable]]:
모든 AsyncFunction instance는 ECMAScript
각 AsyncFunction instance는 다음 own properties를 가집니다:
The abstract operation AsyncFunctionStart takes arguments promiseCapability (a
The abstract operation AsyncBlockStart takes arguments promiseCapability (a
The abstract operation Await takes argument arg (an