Показать сообщение отдельно
  #2 (permalink)  
Старый 15.01.2021, 07:17
Аватар для voraa
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,744

Надо так

let Person =function(name,age,gender){
        this.name = name;
        this.age = age;
        this.gender = gender;
        return this;
    };
Person.prototype.greet= function(){
       console.log("My name is " + this.name);
    };
var tom = new Person("Вася",18,"female");
tom.greet();


Либо так
class Person {
    constructor (name,age,gender){
        this.name = name;
        this.age = age;
        this.gender = gender;
        return this;
    }
    greet (){
       console.log("My name is " + this.name);
    }
}

var tom = new Person("Вася",18,"female");
tom.greet();


В крайнем случае (непонятно, зачем) так
let Person = {
    constructor:function(name,age,gender){
        this.name = name;
        this.age = age;
        this.gender = gender;
       this.greet = Person.greet;
        return this;
    },
    greet: function(){
       console.log("My name is " + this.name);
    }
};
 
var tom = new Person.constructor("Вася",18,"female");
tom.greet();

Последний раз редактировалось voraa, 15.01.2021 в 07:24.
Ответить с цитированием