4

惊讶地发现这样一行:

$('#TextBox').val(parseInt($('#TextBox').val())++ );

不管用 !

我做了一些测试,得出的结论是内联++不起作用(在整个 Javascript 中?或者只是在我的示例中?)。

这是一个包含三段代码的测试,似乎可以++使用变量但不是内联。

那么,++在 Javascript 中我们没有内联?

4

3 回答 3

8

jQuery 对此没有什么特别之处。++增加一个变量。您正在尝试增加函数调用的返回值。

于 2013-07-14T16:54:55.410 回答
4

问:什么x++意思?

A: x++表示取 的值x,我们称之为 this n,然后设置xn + 1,然后返回n

问:为什么这会在非变量上失败?

A:让我们在一些简单的东西上试一下,比如说3,看看哪里出了问题。

  1. 取值3并调用它n,好吧,n = 3

  2. 设置3n + 1,所以3 = 3 + 13 = 4这没有任何意义!所以如果这一步做不到,++就不能使用操作符。

于 2013-07-14T17:03:27.440 回答
0

++作用于变量,而不是直接作用于数字

var c = parseInt($('#TextBox').val());
$('#TextBox').val( ++c );

更改顺序从

var x = 0;

var result = x++;

result // 0

var x = 0;

var result = ++x;

result // 1

然后它将++在检索值之前进行评估。

于 2013-07-14T17:00:27.783 回答