变量未在函数外赋值

Variable not being assigned value out of function

下面的代码将 "amount" 替换为 "NaN"。 我觉得这与变量在 add 函数之外有关。 有什么办法可以解决这个基本问题……我现在觉得自己很蠢。谢谢,马修。

var x = 5
var y = 4

function add() {
  var x = x + y;
  document.getElementById("amount").innerHTML = x;
}
<p onclick="add()">Hello</p>
<p id="amount"> Cacti: 0</p>

稍后我会接受你的回答,我不能那么快接受,抱歉。

这会起作用:

<body>
        <p onclick="add()">Hello</p>
        <p id="amount"> Cacti: 0</p>
        <script>
        var x = 5
        var y = 4
            function add() {
                x = x + y;
                document.getElementById("amount").innerHTML = x;    
            }
        </script>

  </body>

从函数内部删除 var,因为您不想声明新变量 x,但已经使用 x在函数外声明。