Пожалуйста, помогите понять, почему строка obj['prop'] = 'zzz';
не работает и даже показывает ошибку, когда "use strict";
включен и работает нормально, когда используется Object.defineProperty(obj, 'prop', {value:'zzz'});
? (В то время как delete
работает абсолютно нормально)Определить свойства с помощью Object.defineProperties
//"use strict";
var obj = Object.defineProperties({}, {
prop: {
value: 'aaa',
writeable: true,
enumerable: true,
configurable: true
}
});
console.log(obj.prop);
obj['prop'] = 'zzz';
//Object.defineProperty(obj, 'prop', {value:'zzz'});
console.log(obj.prop);
//delete obj.prop;
//console.log(obj.prop);
О, боже, спасибо! я думал, что я злюсь ... – nik