遇到一个有点奇怪的问题
JScript code
console.log(a);//a=10
console.log(b);//b=2
var step = (a > b) ? 1 / a : 1 / b;
为什么会得到step=0.5呢
不是应该=0.1吗?
a>b 是true ,step不是应该等于1/a?
------解决方案--------------------
按字符串的比较方式的话'2'>'10',估计这两个变量是字符串类型吧?
改为:
var step = (parseInt(a) >parseInt(b)) ? 1 / a : 1 / b;
------解决方案--------------------
var a = '10';
var b = '2';
var step = (a > b) ? 1 / a : 1 / b;
alert(step);
字符串比较会出现这个问题。