課程
/前端開發(fā)
/JavaScript
/JavaScript進(jìn)階篇
function sortNum(a,b) {
? ? ? ?return a-b;
}
這個怎么就能實現(xiàn)升序排序了?怎么這個樣子
2016-06-12
源自:JavaScript進(jìn)階篇 7-22
正在回答
注意:?該函數(shù)要比較兩個值,然后返回一個用于說明這兩個值的相對順序的數(shù)字。比較函數(shù)應(yīng)該具有兩個參數(shù) a 和 b,其返回值如下:?
? 若返回值<=-1,則表示 A 在排序后的序列中出現(xiàn)在 B 之前。? 若返回值>-1 && <1,則表示 A 和 B 具有相同的排序順序。? 若返回值>=1,則表示 A 在排序后的序列中出現(xiàn)在 B 之后。
原文中說的:(以上),a-b<=-1(因為這里是a,b整數(shù))那么a就是排在b之前。。所以就是升序小的排在前面。。。sort 是根據(jù)反回值來操作哪個做前面哪個做后面的。。而return a-b ?就是給sort的返回值,然后sort再進(jìn)行判斷,最后就是升序 ? ?如果下b-a 那就是降序?
方法錯誤這個不能排序 可以用function Gba(a,b){ return a?b?a:b} 這樣一句話來排序
這個只是一個比較兩個數(shù)大小的函數(shù),并不是用來排序的。 sort()才是排序函數(shù),array.sort()這個函數(shù)自己會進(jìn)行一些排序的算法,具體我不知道他用的是什么,大概也就是哪幾種,快排,冒泡,歸并之類的,這個不用管。但是排序需要一個標(biāo)準(zhǔn),那就是如何比較兩個數(shù)的大小,這個你可以告訴這個sort函數(shù),或者叫做指定。所以你問的這個函數(shù),相當(dāng)于告訴sort函數(shù),如果a-b>0,那么a排在b的后面,a-b<0排在前面,a=b兩個相等,兩個一樣。另外我覺得課程里說的有點困惑,按照J(rèn)avascript的文檔描述,傳遞給sort()的函數(shù),返回值應(yīng)該是>0,<0 和=0,并不是和1,-1相關(guān)。
舉報
本課程從如何插入JS代碼開始,帶您進(jìn)入網(wǎng)頁動態(tài)交互世界
2 回答數(shù)組排序sort()問題
1 回答數(shù)組中的排序問題
1 回答關(guān)于數(shù)組排序的問題
4 回答數(shù)組排序sort()
1 回答數(shù)組排序sort()
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補(bǔ)貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號
2016-06-18
注意:?該函數(shù)要比較兩個值,然后返回一個用于說明這兩個值的相對順序的數(shù)字。比較函數(shù)應(yīng)該具有兩個參數(shù) a 和 b,其返回值如下:?
? 若返回值<=-1,則表示 A 在排序后的序列中出現(xiàn)在 B 之前。
? 若返回值>-1 && <1,則表示 A 和 B 具有相同的排序順序。
? 若返回值>=1,則表示 A 在排序后的序列中出現(xiàn)在 B 之后。
原文中說的:(以上),a-b<=-1(因為這里是a,b整數(shù))那么a就是排在b之前。。所以就是升序小的排在前面。。。sort 是根據(jù)反回值來操作哪個做前面哪個做后面的。。而return a-b ?就是給sort的返回值,然后sort再進(jìn)行判斷,最后就是升序 ? ?如果下b-a 那就是降序?
2016-06-12
方法錯誤這個不能排序 可以用function Gba(a,b){ return a?b?a:b} 這樣一句話來排序
2016-06-12
這個只是一個比較兩個數(shù)大小的函數(shù),并不是用來排序的。 sort()才是排序函數(shù),array.sort()這個函數(shù)自己會進(jìn)行一些排序的算法,具體我不知道他用的是什么,大概也就是哪幾種,快排,冒泡,歸并之類的,這個不用管。但是排序需要一個標(biāo)準(zhǔn),那就是如何比較兩個數(shù)的大小,這個你可以告訴這個sort函數(shù),或者叫做指定。所以你問的這個函數(shù),相當(dāng)于告訴sort函數(shù),如果a-b>0,那么a排在b的后面,a-b<0排在前面,a=b兩個相等,兩個一樣。另外我覺得課程里說的有點困惑,按照J(rèn)avascript的文檔描述,傳遞給sort()的函數(shù),返回值應(yīng)該是>0,<0 和=0,并不是和1,-1相關(guān)。