![](/img/trans.png)
[英]Assigning new value to an existing array (global var) within a function doesn't work. Why?
[英]When assigning the result of an addition to a variable, calculator doesn't work. Why?
我正在试验我的非常基本的 Javascript,我发现了一个很好的教程,关于如何在 JS 中制作一个非常基本的计算器。
我试着跟随视频,但我不想只是“复制粘贴”他正在写的东西,所以我停下来尝试做我认为是逻辑代码的事情......错了!
这里的问题
为什么这不起作用?
function addNum() {
let first = document.querySelector('.first').value;
let second = document.querySelector('.second').value;
let result = document.querySelector('.resultt').value;
return result = first + second
}
我试图将与结果相关的输入分配给一个变量,但它不起作用。
但是当我这样做时:(就像在教程中所做的那样)
function addNum() {
let first = parseInt(document.querySelector('.first').value);
let second = parseInt(document.querySelector('.second').value);
document.querySelector('.resultt').value=first + second;
}
因此,无需将结果分配给变量,它就可以工作。
为什么?
当你做
let result = document.querySelector('.resultt').value;
您正在将value
属性中的值复制到result
变量中。 之后它们之间没有持续的链接,它们都只包含相同的字符串。 这意味着稍后,当您执行result = first + second
,您所做的就是更新result
; 这对value
根本没有影响。
所以,你必须分配回value
,你在你的第二个代码块做。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.