6.2.2.4 如果突然返回
算法步骤表示或以其他方式等效方式表示:
- 返回 ReturnIfAbrupt(argument)。
等同于:
如果 argument 是一个 abrupt completion,则返回 argument。
否则如果 argument 是一个 Completion Record,则让 argument 变成 argument.[[Value]]。
算法步骤表示或以其他方式等效方式表示:
- ReturnIfAbrupt(AbstractOperation()).
等同于:
让 hygienicTemp 变成 AbstractOperation()。
如果 hygienicTemp 是一个 abrupt completion,则返回 hygienicTemp 。
否则如果 hygienicTemp 是一个 Completion Record,则返回 hygienicTemp.[[Value]] 。
其中 hygienicTemp 是短暂的,只在与 ReturnIfAbrupt 相关的步骤中可见。
算法步骤表示或以其他方式等效方式表示:
- 让 result 变成 AbstractOperation(ReturnIfAbrupt(argument))。
等同于:
如果 argument 是一个abrupt completion,则返回 argument 。
如果 argument 是一个 Completion Record,则让 argument 变为 argument.[[Value]] 。
让 result 变为 AbstractOperation(argument)。