我试图确定为什么会出现以下行为。这是我要更新的div:
<h3 id='guess-count'> 5 Guesses Remaining </h3>
工作代码:
$('#guess-count').html(startingCount = startingCount - 1 + " Guesses Remaining");
这将显示startingCount变量的更新值。
不工作
$('#guess-count').html(startingCount-- + " Guesses Remaining");
当我进入调试器时,我看到该值确实发生了变化,但未在html视图中表示。但是,如果我再次运行它,它会更新html值,但会减去html之前的值。这是一个例子:
// starting value and first pass
startingCount = 5
$('#guess-count').html(startingCount-- + " Guesses Remaining");
// startingCount html display value is 5 BUT startingCount holds the value of 4
startingCount = 4
//second pass
$('#guess-count').html(startingCount-- + " Guesses Remaining");
// startingCount html display value is 4 BUT startingCount holds the value of 3
似乎正在显示startingCount的当前值,然后从其当前值减去1
值。
有人知道为什么这样行吗?在更新html之后,它似乎会评估“ startingCount--”。
最佳答案
这是操作顺序。基本上:
startingCount--
说要打印数字然后递减。
您想要的是:
--startingCount
递减数字,然后打印。