降序函數 return b-a;
<script type="text/javascript">
? ?function sortNum(a,b) {
? ? ?return b-a;
? ?}
var myarr = new Array("80","16","50","6","100","1");
document.write(myarr.sort(sortNum));
</script>
? ?q其中 return b-a; ? 怎么理解???????搞不懂
<script type="text/javascript">
? ?function sortNum(a,b) {
? ? ?return b-a;
? ?}
var myarr = new Array("80","16","50","6","100","1");
document.write(myarr.sort(sortNum));
</script>
? ?q其中 return b-a; ? 怎么理解???????搞不懂
2016-03-28
舉報
2016-03-28
abcdefg?從a到b就是升,從b到a就是降。別把哪個當作減號。先這樣子記吧,哈哈哈
2016-03-28
參數說明:
1.如果不指定<方法函數>,則按unicode碼順序排列。
2.如果指定<方法函數>,則按<方法函數>所指定的排序方法排序。
myArray.sort(sortMethod);
注意:?該函數要比較兩個值,然后返回一個用于說明這兩個值的相對順序的數字。比較函數應該具有兩個參數 a 和 b,其返回值如下:?
? 若返回值<=-1,則表示 A 在排序后的序列中出現在 B 之前。
? 若返回值>-1 && <1,則表示 A 和 B 具有相同的排序順序。
? 若返回值>=1,則表示 A 在排序后的序列中出現在 B 之后。
---------------------------------------------------------------------------------------------------------------------
"80","16","50","6","100","1"
這幾個數。
return a - b; ? ?80-16 >= 1; ? ?根據上面返回值規則,A在B之后,所以,80要在16后面,16,80這是升序。
return b - a; ? ?16-80 <= -1; ? ?根據上面返回值規則,A在B之前,所以,80要在16前面,80,16這是降序。 ?