2011-09-23 48 views
1

我想每次点击后价值2011越来越多,这是怎么回事?每次点击越来越多的数字?

Example:

$('button').click(function() { 
    var num = '2011'; 
    var out = num ++1; 
    alert(num); // i want this output: 2012 
}); 
+0

仅供参考,您定义'num'作为,因为引号的字符串。另外,++运算符没有其他任何东西(比如1)。 ++意味着增加,或“增加一个值”。 –

+0

'var out = num ++ 1;'是一个无效的语句。可以使用:var out = ++ num;'var out = num = num + +1;','var out = num = num + 1'。使用'var out = num ++;'不会产生所需的结果,因为在增量表达式之前'num ++'返回'num'的值。 –

回答

4
var num = 2011; 
$('button').click(function() { 
    num++; 
    alert(num); // i want this output: 2012 
}); 
2

试试这个:

var num = '2011'; 
$('button').click(function() { 
    var out = num++; 
    alert(num); 
}); 
  • var num必须是功能之外,否则将再次成为2011每次运行该功能时。
  • num++1应该是num++
+1

仅供读者在家使用,如果您*确实想使用out变量(因为您声明了它),那么您需要更改代码以使用前缀增量运算符。像这样: var out = ++ num; alert(out); – aquinas

3
var num = '2011'; 
$('button').click(function() { 
    num++; 
    alert(num); // i want this output: 2012 
}); 
+0

如果此代码由于缺少'var'前缀而在本地范围内运行,'num'将被全局声明。 –

+0

这就是这个想法。不知道OP要多少功能。 – MeLight

+0

无论OP如何“深入”,范围都会导致该功能块工作。除非另有明确说明,否则始终指定'var'是一个好习惯。 –