Всем привет, возникла такая непонятка, почему в данной ситуации set не присваивает новые значения?
var user = {};
Object.defineProperties(user, {
name: {
value: "Вася"
},
surname: {
value: "Иванов"
},
fullName: {
get: function(){
return this.name + " " + this.surname;
},
set: function(value){
var split = value.split(" ");
this.name = split[0];
this.surname = split[1];
}
}
});
user.fullName = "Миша Петров";
document.write(user.fullName);
-----
Эти строки выполняются, но значение остается прежним
this.name = split[0];
this.surname = split[1];