這個語句中的問號和冒號分別是什么意思呢?
speed=speed>0?Math.ceil(speed):Math.floor(speed);
問號和冒號分別代表什么意思呢?有點看不懂。
如果按照if語句的意思來理解:
if(speed>0){
Math.ceil(speed);
}else{
Math.floor(speed);
};
是不是問號就是代表判斷,而冒號就是“否則”的意思?
speed=speed>0?Math.ceil(speed):Math.floor(speed);
問號和冒號分別代表什么意思呢?有點看不懂。
如果按照if語句的意思來理解:
if(speed>0){
Math.ceil(speed);
}else{
Math.floor(speed);
};
是不是問號就是代表判斷,而冒號就是“否則”的意思?
2016-11-18
舉報
2016-11-18
speed=speed>0?Math.ceil(speed):Math.floor(speed);
上述這段代碼用的三元運算符,如同下面代碼意思:
? var a = 5; var b = 8;
??? var result = a > b ? a : b;
??????? alert(result);
如果a大于b就把?后面a的值保存在result這個變量里面,alert(彈出a結果),如果b大就是其反。
var result = 如果a>b就是a給result,如果不大于就把b結果給result,
speed=speed>0?Math.ceil(speed):Math.floor(speed);
speed這個參數大于0就會先去找(?)問號后面的Math.ceil(speed)看他成不成立是不是它要的結果,如果不是就去找(:)后面的Math.floor(speed)的這句話,至于是找Math.ceil(speed)還是Math.floor(speed)那就因speed傳的值決定。
2016-11-18
這是問號表達式,問號前表達式為真,返回問號后冒號前的數據,問號前表達式為假,返回結果為冒號后的數據
2016-11-18
三元運算符.
speed>0為真,執行Math.ceil(speed)
speed>0為假,執行Math.floor(speed)