javascript - 从函数构造函数访问方法

标签 javascript

retirementAge方法如何访问同一个Person函数构造函数中的calculateAge方法的值?

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

var john = new Person('John', 'teacher', 1998);
john.retirementAge(john.calculateAge());

最佳答案

如果您想通过调用来获取值,则需要从 this.calculateAge 返回一个值。当您这样做时,您只需调用函数 this.calculateAge() 即可,它应该按预期工作:

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

var john = new Person('John', 'teacher', 1998);
console.log("Age:", john.calculateAge())
console.log("Years to retirement:", john.retirementAge())

关于javascript - 从函数构造函数访问方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52493272/

相关文章:

javascript - Ajax 文件上传, 'progress' 上传事件不会在 Edge 浏览器中触发

javascript - JavaScript 中的倒计时器没有停止

javascript - 使用 angularjs 和 JSON 从数据库获取数据

javascript - Firebase 的云功能 - 删除或添加数据

javascript - 如何使用javascript淡化图像?

javascript - 使用变量键访问 JavaScript 对象中的值

javascript - OnePage Scroll 自定义导航

javascript - AngularJS - 网页未更新

javascript - 如何使用 JQuery 根据复选框的值默认显示或隐藏?

javascript - 如何在 Javascript 中克隆 XML 文档?