var Assertion = function() {
return { "dummy": "data" };
}
Object.defineProperty(Object.prototype, 'should', {
set: function(){},
get: function(){
return new Assertion(this);
}
});
// Insert magic here.
// This needs to be false
console.log(({}).should === undefined);
Какие параметры у меня есть в ES5 для отмены вызова defineProperty
?
Нет глупых предложений, например Object.defineProperty = function() { }
.
Следующий Object.defineProperty(Object.prototype, 'should', {})
делает не работает
и Object.defineProperty(Object.prototype, 'should', { value: undefined })
Выбрасывает Uncaught TypeError: Cannot redefine property: defineProperty
в V8
Object.defineProperty(Object.prototype, 'should', {
set: function() {},
get: function() { return undefined; }
});
Выдает ту же ошибку
delete Object.prototype.should
также не работает