speed=speed>0?Math.ceil(speed):Math.floor(speed);這個語法怎么理解?
speed=speed>0?Math.ceil(speed):Math.floor(speed)這句話的語法就是
速度大于0就向上取整,速度小于0就向下取整嗎?
Math.ceil(speed):Math.floor(speed) ?中間的這個引號是else的意思嗎?
不應該是這樣寫嗎?
if(speed>0){
Math.ceil(speed);
}else{
Math.floor(speed);
}
但是這樣寫不行啊,回不去。
2016-08-11
speed=speed>0?Math.ceil(speed):Math.floor(speed)是一個三目運算符,一般形式為:
表達式1? 表達式2: 表達式3?
其求值規則為:如果表達式1的值為真,則以表達式2 的值作為條件表達式的值,否則以表達式2的值作為整個條件表達式的值。 你的沒有輸出啊,可以改為
if(speed>0){
speed=Math.ceil(speed);
}else{
speed=Math.floor(speed);
}
2016-08-03
對的,就是當這個數字是8.3或8.7都取9,如果是(-8.3)或(-8.7)?。?9)這樣就保證鼠標覆蓋和鼠標移出這兩個動作執行的速度一致。Math.ceil(speed):Math.floor(speed) ?這是一個真假的判斷,就是判斷這個speed>0是真還是假,真就取Math.ceil(speed),假就取Math.floor(speed)。你那樣寫是沒問題的,只不過前面這種方法可以一行寫出。而且可以回去的,我也試了一下,應該是你其它地方的問題,這只不過是不同的寫法罷了,希望對你有幫助哈。