@hulktoster

Почему ошибка в конструкторе?

Cоздал конструктор:

function User (argname) {                                                                    
   this.name = argname;
   
   this.sayHi = function () {
     alert ("Меня зовут: " + this.name);
   };
}

let vasya = new User ("Вася");
vasya.sayHi();


Работает.
Результат: Меня зовут: Вася

Хотел переделать то же самое но в классе:

class User {                                          
    constructor (argname) {
        this.name = argname;
        }
    this.sayHi() {
        alert("Меня зовут: " + this.name);  
    }
} 

var vasya = new User("Вася",20);
 
vasya.sayHi();


Не работает. Что не так?
  • Вопрос задан
  • 113 просмотров
Решения вопроса 2
@bogomazov_vadim
Исправь:
class User {                                          
    constructor (argname) {
        this.name = argname;
    }
    sayHi() {
        alert("Меня зовут: " + this.name);  
    }
} 

var vasya = new User("Вася",20);
 
vasya.sayHi();
Ответ написан
Комментировать
...
this.sayHi() {
        alert("Меня зовут: " + this.name);  
    }
...


Тут this ненужно

...
sayHi() {
        alert("Меня зовут: " + this.name);  
    }
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы