课程
/前端开发
/JavaScript
/JavaScript进阶篇
关于return a - b;
为什么比较大小不是以0为分界,而是以(-1,1)的区间为分界,加入输入的不是整数,而是浮点数,函数的这种比较方法还有效吗?
2016-11-01
源自:JavaScript进阶篇 7-22
正在回答
其实就是以0为分界,大于0往后排,小于0往前排,课程上那个不用管它,误导的
var arr = [0.2, 0.5, 0.8, 0.1]; arr.sort(function (a, b) { //从小到大 if (a - b < 0) { return -0.0000001; //这里是负数即可 } else if (a - b > 0) { return 0.00000001; //这里是正数即可 } else { return 0; //必须为0才相等 } });
weibo_灬守望者丶_0 提问者
可以试试看把数据改成差在1以内试试看还能不能排序。。
有效啊。
举报
本课程从如何插入JS代码开始,带您进入网页动态交互世界
1 回答关于return a-b
6 回答关于return a-b 的理解这样是否正确??
1 回答return a-b
4 回答关于a-b和b-a有关的排序问题
2 回答降序函数 return b-a;
购课补贴联系客服咨询优惠详情
慕课网APP您的移动学习伙伴
扫描二维码关注慕课网微信公众号