我正在尝试做一个简单的计数器,单击名为“ +”的按钮应将变量(Score
)的值增加1,而将按钮“-”应将其值的值减少1。我第一次按+,实际上Score
下降了一个,然后第二次点击增加了,反之亦然,用“-”表示。我在做什么错了?
顺便说一句,我只是为了娱乐而编写代码,而且在Stack Overflow也很新,所以请原谅凌乱的代码。
<!DOCTYPE html>
<html>
<p id="Score1">
</p>
<p id="Score2">
</p>
<button type: button onclick= PlusOneTeam1()>
+
</button>
<button type: button onclick="MinusOneTeam1()">
-
</button>
<button type: button onclick="PlusOneTeam1">
+
</button>
<button type: button onclick="MinusOneTeam2">
-
</button>
<script>
var Score = 0
document.getElementById("Score1").innerHTML = Score
function PlusOneTeam1() {
document.getElementById("Score1").innerHTML = Score ++ ;
return Score ;
}
function MinusOneTeam1() {
document.getElementById("Score1").innerHTML = Score -- ;
}
</script>
</html>
答案 0 :(得分:3)
您可能需要在此处使用+= 1
或++a
。
从文档中:
递增运算符将其操作数递增(加1)并返回一个值。
如果使用后缀,则在操作数之后使用运算符(例如x ++),则它将在递增之前返回该值。 如果在操作数之前使用带运算符的前缀(例如++ x),则它会在递增后返回值。
让我们看一些代码
let a = 1
let b = a++
console.log(a, b) // a is 2, b is 1
这是因为a++
照原样返回a
,然后在 之后对表达式求值,将其加到a
。
let a = 1
let b = ++a
console.log(a, b) // 2, 2
此处两个值均为2
,因为++a
首先递增a
,然后返回更新后的值a
,将其放入表达式中。