如何使用它的值是从javascript函数内的函数调用获得的?

时间:2017-12-07 08:09:28

标签: javascript

我正在尝试弄清楚如何在另一个函数(assign)中使用函数调用(Bmi)中的值,并尝试使用获取的值用于执行控制流程以获得所需的输出到我的html上。但是,我不知道如何利用双函数调用中的值。非常感谢帮助!提前thx!

这是我的HTML:

BMI

这是我的javascript:

HealthCat

1 个答案:

答案 0 :(得分:4)

您不能在另一个函数的一个函数中使用局部变量的值。一旦函数执行完成,局部变量为destroyed并且不能再使用。要使用Bmi函数外部的BMI变量,需要返回变量,以便调用函数可以使用它:

function BMI(){
   var Weight = document.getElementById("weight").value;
   var Height = document.getElementById("height").value;
   var Bmi =  Weight/(Height*Height);
   document.getElementById("result").innerHTML =Bmi;
   return Bmi; // Return the Bmi value.
}

function HealthCat(){
   var Bmi = BMI(); // Use the returned Bmi value
   if(Bmi<18.50){
      document.getElementById("Hresult").innerHTML="Under weight";

   }else if (Bmi>18.5 && Bmi <23) {
      document.getElementById("Hresult").innerHTML="Normal weight";

   }else if (Bmi>23 && Bmi <27.5) {
      document.getElementById("Hresult").innerHTML="Over weight";

   }else if (Bmi>27.5) {
      document.getElementById("Hresult").innerHTML="Obese";
   }
}