变量的乘法不显示

时间:2017-12-18 14:46:40

标签: javascript html

在下面的代码中,显示的“结果”为零,为2 * 0.但是,有一个按钮将“2”加2。单击它后,“结果”应为2 * 2,而不是2 * 0.我的问题是它最终显示为零。

let number1 = 2;
let number2 = 0;

const add2 = () => {
  number2 += 2;
  display();
};

let result = number1 * number2;

const display = () => {
  document.getElementById("result").innerText = result;
};

display();
<p><span id="result"></span></p>

<button onclick="add2();">click me</button>

2 个答案:

答案 0 :(得分:0)

您应该声明result变量全球,其总是保留结果。

    let number1 = 2;
let number2 = 0;
let result;
const add2 = () => {
        number2 += 2;
        result = number1 * number2;
        display();
};

result = number1 * number2;
const display = () => {
      document.getElementById("result").innerText = result;
};

display();
 <p><span id="result"></span></p>
 <button onclick="add2();">click me</button>

答案 1 :(得分:0)

您需要全局声明结果变量,然后确保每次单击按钮时都计算它。下面我创建了一个名为calculate的函数来执行此操作:

&#13;
&#13;
<html>

<body>
    <p><span id="result"></span></p>

    <button onclick="add2();">click me</button>
   <script>


    let number1 = 2;
    let number2 = 0;
    let result;

    const add2 = () => {
        number2 += 2;
        result = calculate();
        display();
    };
    
    const calculate = () => {
      return number1 * number2;
    };

    const display = () => {
        document.getElementById("result").innerText = result;
    };
    result = calculate();
    display();

   </script> 

</body>
&#13;
&#13;
&#13;