defineProperty
Как заставить Object.defineProperty определить свойство, которое можно только увеличивать? Прикол в том, что при первой проверке в setter'e вылетает ошибка ReferenceError: num is not defined, а при попытке установить свойство по умолчанию "TypeError: Invalid property. A property cannot both have accessors and be writable or have a value"
var obj = {}; Object.defineProperty(obj, 'num', { value: 0, //TypeError get: function() {return num}, set: function(value) {num = (!num || num > value) ? value: num} //ReferenceError }); Либо я туплю либо одно из двух... |
Часовой пояс GMT +3, время: 06:20. |