我无法更新变量

I cant update the variable

本文关键字:变量 更新      更新时间:2023-09-26

我有一个代码。首先,我认为这很简单,但对我来说不是。

我无法更新变量。我知道为什么我无法更新。但是我该如何解决这个问题呢?我需要什么 var "总和" 等于 7。

<p id="demo">DEMO</p>
<script>
var number1 = 5;
var number2 = 0;
var p = document.createElement("p");
var sum = document.createTextNode("sum = " + (number1 + number2).toFixed());
var number2 = 2; /*It is possible somehow update a variable "sum", which can equal after "var number2 = 2;" not 5 and update to 7? The var "sum" must updates to 7. 
HOW CAN REALIZE THAT IDEA??? OR what advice or solve you can give to me?
*/
p.appendChild(sum);
demo.appendChild(p);
</script>
https://jsfiddle.net/Lrpuro23/2/

附加元素后,您将无法再访问其内容。
所以我所做的是直接创建对插入元素的引用并编辑其内容。

我也做了一个小函数,所以你没有两次这个代码。

var container = document.getElementById("result");
var number1 = 5;
var number2 = 0;
printResult();
var number2 = 2; 
printResult();
function printResult() {
  container.innerHTML = "sum = " + (number1 + number2).toFixed();
}
<p id="result"></p>

var sum

是文档的文本节点,数字 1+数字 2 的结果已被计算并类型转换为字符串,因此更新 number2 对 sum 没有影响即使您像这样编写代码,您也无法更改之前计算的 sum 值,并且在您显式更改 sum 之前将保持不变

var number1 = 5;
var number2 = 2;
var sum = number1 + number2;
var number2 = 4; //the sum will still has value of 7