Javascript中的内联`++`无法正常工作
惊讶地发现这样一条线:
$('#TextBox').val(parseInt($('#TextBox').val())++ );
不管用 !
我已经完成了一些测试,它得出的结论是内联++
不起作用(在Javascript中作为一个整体?或者只是在我的例子中?)。
这是一个包含三段代码的测试 ,似乎++
可以使用变量而不是内联。
那么,在Javascript中没有内联++
?
关于这一点,jQuery并没有什么特别之处。 ++
增加一个变量。 您正在尝试增加函数调用的返回值。
问: x++
是什么意思?
答: x++
表示取x++
的值,我们称之为n
,然后将x
设置为n + 1
,然后返回n
。
问:为什么这会在非变量上失败?
A:让我们尝试一下简单的事情,比如3
,看看哪里出了问题。
-
取值
3
并将其称为n
,好吧,n = 3
-
设置
3
为n + 1
,所以3 = 3 + 1
3 = 4
这没有意义! 因此,如果无法执行此步骤,则无法使用++
运算符。
++
适用于变量,不直接适用于数字
var c = parseInt($('#TextBox').val()); $('#TextBox').val( ++c );
从中更改订单
var x = 0; var result = x++; result // 0
至
var x = 0; var result = ++x; result // 1
然后它会在检索值之前评估++
。