【问题标题】:Why is Javascript adding 1 then subtracting, or subtracting 1 then adding? [duplicate]为什么 Javascript 加 1 然后减,或减 1 然后加? [复制]
【发布时间】:2019-06-26 04:00:34
【问题描述】:

我正在尝试创建一个小的 Javascript 程序,当我单击“+”按钮时加 1,当我单击“-”按钮时减 1。它可以工作,但是当我加 1 然后去减一个时,第一次单击“-”按钮会在减之前再加一个。

例如。 1、2、3、4,(然后我点击“-”按钮)5、4、3...

   var number = 1;
<button type="button" onClick="document.getElementById('number').innerHTML = number++">+</button>
<button type="button" onClick="document.getElementById('number').innerHTML = number--">-</button>
<div id="number"></div>


 

【问题讨论】:

  • number++ 返回数字,然后将其递增。 ++number 增加数字然后返回它。
  • number++ 被用作后增量运算符。它返回变量的当前值,then 递增变量。您应该使用预增量版本++number

标签: javascript


【解决方案1】:

这基本上是因为你在做number++,你应该做++number

var number = 0;
<button type="button" onClick="document.getElementById('number').innerHTML = ++number">+</button>
<button type="button" onClick="document.getElementById('number').innerHTML = --number">-</button>
<div id="number"></div>

了解会发生什么you need to know the following

a++ 将返回a,然后执行++ 操作。

++a 将返回对a 执行++ 操作的结果。

var a = 5;
var b = 8;

console.log(a++) // will show 5.
console.log(a) // will show 6, because the ++ operation was executed.

console.log(++b) //will show 9. because the ++ operation was executed.
console.log(b) // will keep showing 9.

【讨论】:

  • @cale_b 解释 :)
  • 哦!这就说得通了。非常感谢!
【解决方案2】:

++number 会递增 number 的值,然后返回递增后的值。

var number=1;
<button type="button" onClick="document.getElementById('number').innerHTML = ++number">+</button>
<button type="button" onClick="document.getElementById('number').innerHTML = --number">-</button>
<div id="number"></div>

number++ 会增加 number 的值,但会返回我在增加之前持有的原始值。

var number =1;
<button type="button" onClick="document.getElementById('number').innerHTML = number++">+</button>
<button type="button" onClick="document.getElementById('number').innerHTML = number--">-</button>
<div id="number"></div>

【讨论】:

    猜你喜欢
    • 2020-08-17
    • 2019-02-12
    • 1970-01-01
    • 2016-08-17
    • 1970-01-01
    • 2016-09-30
    • 2013-04-21
    • 2021-10-25
    • 1970-01-01
    相关资源
    最近更新 更多