我试图确定为什么会出现以下行为。这是我要更新的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


递减数字,然后打印。

09-12 01:36