JavaScript. Подробное руководство, 6-е издание, стр. 439
Обратите внимание, что эта функция вызывается не как метод объекта: это глобальная функция, которая принимает объект в виде аргумента.
Пример
<b>function constant(o, n, v) { // Определить константу о.n со значением v </b><b> Object.defineProperty(o, n, { value: v, writable: false</b><b> enumerable: true, configurable:false});</b><b>}</b>См. также
Object.create(), Object.defineProperties(), Object.getOwnPropertyDescriptor(), раздел 6.7
делает объект неизменяемым
Синтаксис
<b>Object.freeze(o)</b>Аргументы
о Объект, который должен быть зафиксирован.
Возвращаемое значение
Зафиксированный объект о.
Описание
Функция
<b>Object.freeze()</b><b>Object.preventExtensions()</b><b>Object.seal().</b><b>Object.freeze()</b>Имейте в виду, что функция
<b>Object.freeze()</b><b>Object.freeze()</b>См. также
Object.defineProperty(), Object.isFrozen(), Object.preventExtensions(), Object.seal(), раздел 6.8.3
возвращает атрибуты свойства
Синтаксис
<b>Object.getOwnPropertyDescriptor(o, имя)</b>Аргументы
о Объект, которому принадлежит искомое свойство.
имя Имя свойства (или индекс элемента массива), атрибуты которого требуется получить.
Возвращаемое значение
Объект дескриптора для указанного свойства заданного объекта или undefined, если такое свойство не существует.
Описание
Функция
<b>Object.getOwnPropertyDescriptor()</b>Дескрипторы свойств
Дескриптор свойства - это обычный JavaScript-объект, описывающий атрибуты (и иногда значение) свойства. В языке JavaScript существует два типа свойств. Свойства-данные, имеющие значение и три атрибута:
<b>enumerable, writable</b><b>configurable</b><b>enumerable</b><b>configurable</b>Дескриптор свойства с данными имеет следующий вид:
<b>{</b><b>value: /* любое значение, допустимое в языке JavaScript */,</b><b>writable: /* true или false */,</b><b>enumerable: /* true или false */,</b><b>configurable: /* true или false */</b><b>}</b>Дескриптор свойства с методами доступа имеет следующий вид:
<b>{</b><b>get: /* функция или undefined: взамен свойства value */,</b><b>set: /* функция или undefined: взамен атрибута writable */,</b><b>enumerable: /* true или false */,</b><b>configurable: /* true или false */</b><b>}</b>См. также
Object.defineProperty(), раздел 6.7
возвращает имена неунаследованных свойств
Синтаксис
<b>Object. getOwnPropertyNames(o)</b>Аргументы
о Объект.
Возвращаемое значение
Массив, содержащий имена всех неунаследованных свойств объекта о, включая неперечислимые свойства.
Описание
Функция
<b>Object.getOwnPropertyNames()</b><b>Object.keys().</b>Обратите внимание, что эта функция вызывается не как метод объекта: это глобальная функция, которая принимает объект в виде аргумента.
Пример
<b>Object.getOwnPropertyNames([]) // => ["length"]: "length" - неперечислимое</b>См. также
Object.keys(), раздел 6.5
возвращает прототип объекта
Синтаксис
<b>Object.getPrototypeOf(о)</b>Аргументы
о Объект.
Возвращаемое значение
Прототип объекта о.
Описание
Функция
<b>Object.getPrototypeOf()</b>