Здесь у меня есть код, который использует getter и setter для определения и извлечения значения свойства. Я создал объект, используя конструктор объекта. Я передал объект в a для ... в метод loop.Also использовал getOwnPropertyNames() на object.Here результатыЧто такое свойство «OWN» в javascript
свойства "FULLNAME" доступно в течение ... в цикле
"FULLNAME" не виден в getOwnPropertyNames метода() . Это означает, что это
не является собственностью
Здесь у меня есть два основных вопроса. Что такое собственная собственность? Если «fullName» не является собственностью, то какой тип собственности это?
function Name(first, last) {
this.first = first;
this.last = last;
}
Name.prototype = {
get fullName() {
return this.first + " " + this.last;
},
set fullName(name) {
var names = name.split(" ");
this.first = names[0];
this.last = names[1];
}
};
var obj=new Name('al','zami');
for(var i in obj){
console.log(i); // fullName is here
}
console.log(Object.getOwnPropertyNames(obj)); // fullName is not here
* «какой тип собственности это» * Некоторые сказали бы, что это «унаследованное» свойство. –
[MDN: Перечисление и владение свойствами] (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Enumerability_and_ownership_of_properties) – Bergi
@FelixKling: кто бы не стал? – Bergi