Доступ к методам из конструкторов функций - PullRequest
0 голосов
/ 25 сентября 2018

Как метод retirementAge может получить доступ к значению метода Calculate в том же конструкторе функции Person?enter image description here

Ответы [ 3 ]

0 голосов
/ 25 сентября 2018

Если вы заставите свой метод calcAge возвращать значение, вы сможете получить к нему доступ в методе retirementAge.Попробуйте это:

this.calculateAge = function () {
    return 2018 - this.yearOfBirth
  }
  this.retirementAge = function () {
    return 66 - this.calculateAge()
  }
}
0 голосов
/ 25 сентября 2018

Вы можете сделать методы, чтобы перенастроить значение, а затем использовать this.calculateAge() в методе для получения значения.

var Person = function(name, yearOfBirth, job) {
        this.name = name;
        this.yearOfBirth = yearOfBirth;
        this.job = job;
        this.calculateAge = function() {
            return 2018 - this.yearOfBirth;
        };
        this.retirementAge = function() {
            return 66 - this.calculateAge();
        }
    };

var john = new Person("John", 1998, 'teacher');

console.log(john.retirementAge());
console.log(john.calculateAge());
0 голосов
/ 25 сентября 2018

Вы можете просто вызвать его в методе retirementAge внутри функции конструктора

this.retirementAge = function() {
   console.log(66 - this.calculateAge())
}

и использовать его как

john.retirementAge();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...