大家好,我正在学习Javascript,我很困惑在另一个函数中有一个函数,特别是参数部分。
我已经从课程中提供了一个示例代码,用于计算三个人在出生年份退休前的年份。
我感到困惑的是函数yearUntilRetirement(名称,年)中的年。
这不应该是 yearOfBirth 而不是年,因为它回顾了calculateAge(yearOfBirth)函数来查找年龄? 或者这个参数只对它当前的函数是唯一的吗?
function calculateAge(yearOfBirth) {
var age = 2016 - yearOfBirth;
return age;
}
function yearsUntilRetirement(name, year) {
var age = calculateAge(year);
var retirement = 65 - age;
console.log(name + ' retires in ' + retirement + ' years.');
}
yearsUntilRetirement('John', 1990);
yearsUntilRetirement('Mike', 1969);
yearsUntilRetirement('Mary', 1948);
答案 0 :(得分:1)
也许这会澄清。
当您调用yearsUntilRetirement(name, year)
时,您传入两个值作为参数。例如yearsUntilRetirement("John", 1975)
。然后,在函数yearsUntilRetirement
内部,使用calculateAge
的值作为参数调用另一个函数year
。由于year
是值1975
,因此我们得到age = calculateAge(1975)
。现在,在calculateAge
函数中,值1975
是与yearOfBirth
对应的值。所以,通过运行一切,你得到var age = 2016 - 1975
。
如果这太过分了,我会尝试进一步澄清。如果您还需要其他任何内容,请发表评论。