8.1.1.4.7 DeleteBinding ( N )
全局环境记录的具体 Environment Record 方法 DeleteBinding 只能删除已明确指定为要删除的绑定。
- 使 envRec 变为调用该方法的全局环境记录。
- 使 DclRec 变为 envRec.[[DeclarativeRecord]]
- 如果 DclRec.HasBinding(N) 为 true,那么
a. 返回 DclRec.DeleteBinding(N)。 4.使 ObjRec 变为 env_R_ec.[[ObjectRecord]]。
5.使 globalObject 变为 ObjRec 的绑定对象。
6.使 existingProp 变为 ? HasOwnProperty(globalObject, N)。
7.如果 existingProp 为 true,那么
a. 使 status 变为 ? ObjRec.DeleteBinding(N)。
b. 如果 status 为 true,那么
i. 使 varNames 变为 envRec.[[VarNames]]。
ii. 如果 N 是_ _varNames 的一个元素, 则从 varNames 中移除该元素。
c. 返回 status。
- 返回 true。