2012-04-21 75 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>));