HasRestrictedGlobalProperty ( N )
Конкретный метод HasRestrictedGlobalProperty(Имеет ограниченное глобальное свойство), глобальной записи среды envRec принимает аргумент N (строку). Он определяет, является ли идентификатор аргумента именем свойства глобального объекта, которое не должно быть затенено глобальной лексической привязкой. При вызове он выполняет следующие шаги:
1. Пусть ObjRec будет envRec.[[ObjectRecord]]. 2. Пусть globalObject будет ObjRec.[[BindingObject]]. 3. Пусть existingProp будет ? globalObject.[[GetOwnProperty]](N). 4. Если existingProp является undefined, вернуть false. 5. Если existingProp.[[Configurable]] является true, вернуть false. 6. Вернуть true.
Свойства могут существовать в глобальном объекте, который был создан напрямую, а не объявлен с помощью объявления var или функции. Нельзя создать глобальную лексическую привязку, имя которой совпадает с именем ненастраиваемого свойства глобального объекта. Глобальное свойство undefined является примером такого свойства.
Информационные ссылки
ECMAScript | Глобальные записи среды
Стандарт ECMAScript — Раздел «9.1.1.4 Global Environment Records» — https://tc39.es/ecma262/multipage/executable-code-and-execution-contexts.html#sec-global-environment-records
Стандарт ECMAScript — Раздел «9.1.1.4.14 HasRestrictedGlobalProperty ( N )» — https://tc39.es/ecma262/multipage/executable-code-and-execution-contexts.html#sec-hasrestrictedglobalproperty