Создание объекта с помощью класса в js и вызов методов
Вопрос из любопытства к знатокам javascript
Пусть есть простой класс
class User {
constructor(name) {
this.name = name;
}
getName() {
return this.name;
}
changeName(name) {
this.name = name;
}
}
И допустим, что мне нужно создать экземпляр класса User и сразу вызвать метод (понятно что так делать плохо, и лучше сначала поместить объект в переменную, а потом вызывать методы)
Есть ли какие-нибудь различия между вызовами
var user = new User('Tom').getName();и
var user = (new User('Tom')).getName();Почему следующий вызов вернет undefined в user?
var user = (new User('Tom')).changeName('Sam');
Ответы (1 шт):
Автор решения: Igor
→ Ссылка
Нет.
class User {
constructor(name) {
this.name = name;
}
getName() {
return this.name;
}
changeName(name) {
this.name = name;
}
}
var user;
(user = new User('Tom')).changeName('Sam');
console.log(user);
или
changeName(name) {
this.name = name;
return this;
}