一指定江山
2016-11-18 03:11
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);
上述这段代码用的三元运算符,如同下面代码意思:
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传的值决定。
这是问号表达式,问号前表达式为真,返回问号后冒号前的数据,问号前表达式为假,返回结果为冒号后的数据
三元运算符.
speed>0为真,执行Math.ceil(speed)
speed>0为假,执行Math.floor(speed)
JS动画效果
113925 学习 · 1443 问题
相似问题