Бит, который вы указали, используется, когда значение не используется . Но ваш [[Construct]]
пример равен с использованием значения.
Для этого вам нужно немного прокрутить вниз:
Шаги алгоритмов, которые говорят или иным образом эквивалентны:
- Пусть результат будет AbstractOperation (ReturnIfAbrupt (аргумент)).
означает то же самое, что и:
Если аргумент является неожиданным завершением, вернуть аргумент.
Если аргумент является записью завершения, установите аргумент в качестве аргумента. [[Value]].
Пусть результат будет AbstractOperation (аргумент).
Таким образом, для Return ? envRec.GetThisBinding()
, когда envRec.GetThisBinding()
не возвращает внезапное завершение, эта строка в [[Construct]]
возвращает [[Value]]
записи не прерывистого завершения из envRec.GetThisBinding()
(значение this
) .