[英]Why am I getting NaN for this variable?
有人知道为什么bigNumberB变量返回的不是数字吗? 我是Java的新手,并且迷惑了函数,在这里看不到我做错了什么,但我确定它很简单。 谢谢,我要24、24,NaN
function mathEquation(moja, mbili, tatu, tano) {
var value = moja * mbili * tatu * tano;
console.log(value);
}
mathEquation(1, 2, 3, 4);
function inceptEquation(sita, tisa) {
var bigNumber = mathEquation(1, 2, 3, 4);
console.log(bigNumber);
var bigNumberB = sita + tisa + bigNumber;
console.log(bigNumberB);
}
inceptEquation(11, 23);
您没有从mathEquation
返回任何mathEquation
function mathEquation(moja, mbili, tatu, tano) {
var value = moja * mbili * tatu * tano;
console.log(value);
return value; // <- return the value here
}
在不返回值的情况下,您尝试添加11 + 23 + undefined
您没有在mathEquation
返回值的总和。 默认情况下,没有显式返回值的函数将返回undefined
。 所以从本质inceptEquation
您是在inceptEquation
这样做的:
11 + 23 + undefined;
将undefined添加到任何数字将导致NaN
。
相反,只需返回总和即可。 如果未在函数中的其他任何地方使用该value
则不需要该value
:
function mathEquation(moja, mbili, tatu, tano) {
return moja * mbili * tatu * tano;
}
您要做的就是将console.log()
更改为return()
。 这是简单的版本:
function multiplication(x, y, z, c) {
var value = x * y * z * c;
return(value);
}
console.log(multiplication(1, 2, 3, 4));
function addition(x, y) {
multiplication(1, 2, 3, 4);
return(x + y + multiplication(1, 2, 3, 4));
}
console.log(addition(11, 23));
希望这就是您所期望的!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.