最近中文字幕高清中文字幕无,亚洲欧美高清一区二区三区,一本色道无码道dvd在线观看 ,一个人看的www免费高清中文字幕

為了賬號(hào)安全,請及時(shí)綁定郵箱和手機(jī)立即綁定

這個(gè)排序函數(shù)看不懂

function sortNum(a,b) {

? ? ? ?return a - b;

? ?}

var myarr = new Array("80","16","50","6","100","1");

document.write(myarr.sort(sortNum));

  1. return a - b; 這是什么意思?返回 a與b的差? 不是說要返回大或者小的那個(gè)嗎?

  2. 這個(gè)函數(shù)接收兩個(gè)參數(shù)a和b 而下面運(yùn)用的時(shí)候卻傳了個(gè)數(shù)組過來是什么操作? 按之前的知識(shí)如果要比較數(shù)字?jǐn)?shù)組不是for循環(huán),依次比較myarr[i]和myarr[i+1] 然后返回大或小的那個(gè)然后在進(jìn)行排序嗎。這里直接這樣不懂。


正在回答

5 回答

你有沒有發(fā)現(xiàn)如果a<b,a-b總是取得負(fù)數(shù),這就能夠?qū)崿F(xiàn)升序排列。

0 回復(fù) 有任何疑惑可以回復(fù)我~

意思應(yīng)該是sort 會(huì)吧數(shù)組里面的數(shù)據(jù)依次導(dǎo)入sortNum(a,b)這個(gè)函數(shù)里面,然后根據(jù)它返回的數(shù)值,負(fù)值,0,正值,來排序

0 回復(fù) 有任何疑惑可以回復(fù)我~

剪切以下代碼到你瀏覽器的console. 你就能看到它是如何排序的。

var myarr = new Array("80","16","50","6","100","1");

myarr = myarr.sort(function(a,b){ console.log("a - b", a - b); document.write(myarr + "<br>"); return a - b});


0 回復(fù) 有任何疑惑可以回復(fù)我~

就是因?yàn)闆]有賦值,因?yàn)楸旧韆>b。不信你把a(bǔ),b換成e,f或者m,o,會(huì)是一樣的---就好比體育課說按按大小個(gè)排列一樣,老師給的手勢就是a-b或者b-a的意思。。。。賦值了反而亂了。

1 回復(fù) 有任何疑惑可以回復(fù)我~

額 這個(gè)sortNum(a,b)就是一個(gè)特殊的數(shù)字排序的函數(shù),當(dāng) a == b的時(shí)候?yàn)?,a > b的時(shí)候?yàn)?, a < b 的時(shí)候?yàn)?-1

2 回復(fù) 有任何疑惑可以回復(fù)我~
#1

系Lillian

還是不太懂,a和b沒賦值,且,為什么a-b就是升序,b-a時(shí)就是降序?
2018-07-17 回復(fù) 有任何疑惑可以回復(fù)我~
#2

風(fēng)起臨冬

sortNum是關(guān)鍵詞嗎,換成其他詞能不能行
2018-07-31 回復(fù) 有任何疑惑可以回復(fù)我~
#3

挽安0 回復(fù) 風(fēng)起臨冬

sortNum也就是函數(shù) 隨意取的 function看見這個(gè)就知道了
2018-08-02 回復(fù) 有任何疑惑可以回復(fù)我~
#4

扁扁1 回復(fù) 系Lillian

你去看java集合類比較器,comparable類,就是二叉樹數(shù)據(jù)結(jié)構(gòu),我猜這個(gè)JS底層跟這個(gè)一樣,返回1,說明是正數(shù),則a大于b,你可以去看看
2018-08-06 回復(fù) 有任何疑惑可以回復(fù)我~
查看1條回復(fù)

舉報(bào)

0/150
提交
取消

這個(gè)排序函數(shù)看不懂

我要回答 關(guān)注問題
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)