Object.defineProperties

Object.defineProperties() - визначає нові або змінює існуючі властивості, безпосередньо на об'єкті, повертаючи цей об'єкт.

Синтаксис:

Object.defineProperties (obj, props)

Параметри:

obj - Об'єкт, на якому визначаються нові або змінюються існуючі властивості.

props - Об'єкт, чиї власні перераховуються властивості являють собою дескриптори для створюваних або змінюваних властивостей. Дескриптори властивостей володіють наступними додатковими ключами:

Опис:

Object.defineProperties(), по суті, визначає всі властивості, відповідними своїми властивостями об'єкта props, на об'єкті obj.

Приклад:

var obj = {}; Object .defineProperties(obj , { 'property1' : { value : true, writable: true }, 'property2' : { value : 3.4 , writable: false } }); var obj = {}; Object.defineProperties(obj, { newDataProperty: { value: 101, writable: true, enumerable: true, configurable: true}, newAccessorProperty: { set: function(x) { this.newaccpropvalue = x; }, get: function() { return this.newaccpropvalue; }, enumerable: true, configurable: true }}); obj.newAccessorProperty=5; alert(obj.newAccessorProperty);