【发布时间】:2019-01-27 07:07:51
【问题描述】:
我写了以下代码。它没有给我答案,而是输出 NaN。我希望代码返回 John 和 Mark 的权重。请解释一下。
'use script';
// Declaring variables
var infoJohn;
var infoMark;
var bmiCalculator;
var higherBmi;
bmiCalculator = function (height, mass) {
var calculatedBmi;
calculatedBmi = mass / (height * height);
return calculatedBmi;
};
infoJohn = {
name: 'John',
mass: 85,
height: 110,
bmi: bmiCalculator(this.height, this.mass)
};
infoMark = {
name: 'Mark',
mass: 120,
height: 85,
bmi: bmiCalculator(this.height, this.mass)
};
console.log('Mark\'s BMI: ' + infoMark.bmi, 'John\'s BMI: ' + infoJohn.bmi,
'\n\n');
【问题讨论】:
-
'use strict'而不是'use script' -
这是一个上下文问题,
this不是指你认为它指的东西。 -
他已经在@gazdagergo 之前声明了变量
标签: javascript javascript-objects