亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

如果return a-b 返回的值是0.5

http://img1.sycdn.imooc.com//581591bd00019f7003520136.jpg如果return a-b 返回的值是0.5 ,比如myarr[0]=16,myarr[1]等于15.5,那么return 0.5小于1 ,為什么還是能夠正常的升序排序,不是應該順序不變嗎?


若返回值>-1 && <1,則表示 A 和 B 具有相同的排序順序。這句話如何理解?

正在回答

3 回答

這句話放在這里是錯誤的!

如果放在這么寫:

var?arr=[0.1,0.5,0.3];
arr.sort(function(a,b){???
????if(a-b>0){
????????return?1;
????}else?if(a-b<0){
????????return?-1;
????}else{
????????return?0;
????}
})
//如果這么寫,這句話還能勉強能套進去,因為>0返回1,<0返回-1,相等就返回-1和1之間;

如果放在這種寫法就不能這么說了:

var?arr=[0.1,0.5,0.3];
arr.sort(function(a,b){
???return?a-b;
})
就如你說的,返回值就是小數,那還不是照樣排序;

因此這句話不對的,只有返回值為0的時候才是相等的情況

PS:畢竟良心免費課程,有些疏漏完全可以諒解..

1 回復 有任何疑惑可以回復我~

好像是說文本框中輸入的數字被變成字符串,需要把字符串轉化為數字,就像var one=parseInt(document.getElementById("txt1").value)。。??吹揭晃荒挥颜f的


0 回復 有任何疑惑可以回復我~

sortNum(a ,b){

?????? a=parseInt(a);

?????? b=parseInt(b);

????? return b-a;

}

0 回復 有任何疑惑可以回復我~
#1

weibo_e_狼傳說_0 提問者

若返回值>-1 && <1,則表示 A 和 B 具有相同的排序順序?主要是我不懂這句話,返回值<=-1和返回值<=1都能理解
2016-10-30 回復 有任何疑惑可以回復我~
#2

糖醋肉3984350 回復 weibo_e_狼傳說_0 提問者

var one=parseInt(document.getElementById("txt1").value)。。所學有限,希望來大神解答。。
2016-10-30 回復 有任何疑惑可以回復我~
#3

weibo_e_狼傳說_0 提問者 回復 糖醋肉3984350

嗯嗯,好的
2016-10-30 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

如果return a-b 返回的值是0.5

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號