Сообщение от zig
|
э.. у меня оно точно так же работает из коробки, без всяких плясок с геттерами и сеттерами. это нормально?
|
Это имеет смысл, когда ты хочешь переопределить дефолтное поведение. Например:
objectWithStringInside = {string_: ""}
Object.defineProperty(objectWithStringInside, "string", {
get: function(){return this.string_},
set: function(value){if(typeof value === "string") this.string_ = value}
})
objectWithStringInside.string = "foo"
alert(objectWithStringInside.string)
objectWithStringInside.string = 1
alert(objectWithStringInside.string)
objectWithStringInside.string = "bar"
alert(objectWithStringInside.string)