JavaScript. Подробное руководство, 6-е издание, стр. 438
Аргументы
прототип Прототип создаваемого объекта или null.
дескрипторы Необязательный объект, отображающий имена свойств в их дескрипторы.
Возвращаемое значение
Вновь созданный объект, наследующий прототип и обладающий свойствами, описываемыми дескрипторами.
Исключения
<b>ТуреЕrror</b><b>Object.definePгорегties()</b><b>ТуреЕrror</b>Описание
Функция
<b>Object.create()</b>Если указан необязательный аргумент дескрипторы, функция
<b>Object.create()</b><b>Object.defineProperties().</b><b>Object.create(p,d)</b><b>Object.defіneProperties(Object.create(p), d);</b>Дополнительную информацию об аргументе дескрипторы можно найти в справочной статье Object.defineProperties(), а описание дескрипторов свойств в справочной статье Object.getOwnPropertyDescriptor().
Обратите внимание, что эта функция вызывается не как метод объекта: это глобальная функция, которая принимает объект в виде аргумента.
Пример
<b>// Создать объект, который имеет собственные свойства х и у и наследует свойство z </b><b>var р = Object.create({z:0}, {</b><b> x: { value: 1, writable: false, enumerable:true, configurable: true},</b><b> y: { value: 2, writable: false, enumerable:true, configurable: true},</b><b>});</b>См. также
Object.defineProperty(), Object.defineProperties(), Object.getOwnPropertyDescriptor(), разделы 6.1, 6.7
создает или настраивает свойства объекта
Синтаксис
<b>Object.defineProperties(o, дескрипторы)</b>Arguments
о Объект, в котором будут создаваться или настраиваться свойства.
дескрипторы Объект, отображающий имена свойств в их дескрипторы.
Возвращаемое значение
Объект о.
Исключения
<b>ТуреЕrror</b><b>ТуреЕrror</b>Описание
Функция
<b>Object.defineProperties()</b>Функция
<b>Object.defineProperties()</b><b>Object.defineProperty();</b><b>Object. getOwnPropertyDescriptor().</b>Пример
<b>// Добавить в новый объект свойства х и у, доступные только для чтения</b><b>var р = Object.defineProperties({}, {</b><b> х: { value: 0, writable: false, enumerable:true, configurable: true},</b><b> y: { value: 1, writable: false, enumerable:true, configurable: true},</b><b>});</b>См. также
Object.create(), Object.defineProperty(), Object.getOwnPropertyDescriptor(), раздел 6.7
создает или настраивает одно свойство в объекте
Синтаксис
<b>Object.defineProperty(o, имя, дескриптор)</b>Аргументы
о
Объект, в котором будет создаваться или настраиваться свойство.
имя Имя создаваемого или настраиваемого свойства.
дескриптор Объект дескриптора свойства, описывающий новое свойство или изменения, которые должны быть выполнены в существующем свойстве.
Возвращаемое значение
Объект о.
Исключения
<b>ТуреЕrror</b><b>ТуреЕrror</b>Описание
Функция
<b>Object.defineProperty()</b>Если объект о еще не имеет свойства с именем имя, эта функция просто создаст новое свойство с атрибутами и значением, указанными в дескрипторе. Если в дескрипторе не указаны какие-либо атрибуты, соответствующие им атрибуты получат значение false или undefined.
Если значение аргумента имя совпадает с именем существующего свойства объекта о, то функция
<b>Object.defineProperty()</b>