2012-04-21 104 views
1

是否可以使用加/减运算符number += 1 的速记和if/else number = (true ? 1 : 0);在一起的简写?速记加法运算符与速记If/Else - Javascript

条件应决定加法或减法。

这种像这样:number = (true ? +=1 : -=1);

+2

你熟悉*添加* A *负*数减去这个数字的事实的影响?你应该这样思考问题...... – 2012-04-21 15:02:06

回答

1

你可以使用这样的:如果你想使用+=运营商,你必须首先声明的变量

number += 1 * (condition ? 1 : -1); 
+1

为什么'1 * ...'? – 2012-04-21 14:53:04

+0

@FelixKling为负数,用于减法。 – Joseph 2012-04-21 14:53:28

+1

@约瑟夫:呃? '1 * -1 == -1'和'1 * 1 == 1' ...我没有看到'1 *'需要什么。 'number +(1 * -1)'与'number +(-1)'相同。 – 2012-04-21 14:54:16

1

,否则不能工作。如果你拥有它,那么你可以简单的有:

number += condition ? 1 : -1; 

请注意,如果你只是数量1-1,并condition是布尔值,你可以这样做:

number += +condition || -1; 

要精确,返回1true和其他false

0

这应该工作,并有增加或减少操作

var number = 0; 
number += (condition) ? (1 * (<operation>)) : (-1 * (<operation>));