Как можно избегать префиксов "this." перед переменными в классе, если их много?
Пример:
class Person {
constructor() {
this.name = "a";
this.lastName = "b";
this.age = 20;
this.hair = "black";
}
}
Ответ
Запиши все проперти вначале в вспомогательный объект, а затем присвой их this.
class Person {
constructor() {
let props = {
name : "a",
lastName : "b",
age : 20,
hair : "black"
}
for (let prop in props) { this[prop] = props[prop]; }
}
}
Но это все бред, это только сделает код тяжелее. Не бойся использовать this, или же применяй defineProperties, но от него код станет еще толще.
Так же есть экспериментальный метод Object.assing.
Object.assing(this, {
name : "a",
lastName : "b",
age : 20,
hair : "black"
});
Но насколько я знаю он поддерживается лишь Firefox, а для прочих браузеров существует лишь в виде полифила или трансплайера и по сути представляет из себя инкапсуляцию способа, что я привел вначале.
Комментариев нет:
Отправить комментарий