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

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

sort為什么會這樣排序,100為什么在0.1和18之間,怎樣運算的

不知道為什么會這樣排序

正在回答

5 回答

unicode編碼 ?0.01 ? ===>?\u0030\u002e\u0030\u0031 ? ?100 ===>\u0031\u0030\u0030 ?18===>?\u0031\u0038 ,從第一位開始比較u0031比u0030大,所以在100和18后面,相同的時候比較第二位同理,18在100后面,好吧我承認我很無聊。

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

?function sortNum(a,b) {

return a-b;

? ?}

var myarr = new Array("0.01","0.1","3","-1","100","50","18");

document.write(myarr.sort()+"<br>");

document.write(myarr.sort(sortNum))

劃線的部位是在你代碼上添加的,這樣就會正常按照你的意愿排列,不添加的話,個人理解是你沒對這組數安排升降,也沒調用函數,那它就自己隨機排列啦,也不知道對不對哈,望大神們指導!

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

如果不指定<方法函數>,則按unicode碼順序排列。

這一節的講解里面有,你也可以再詳細看看喲

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

因為你沒有指定<方法函數>,那么就會按unicode碼順序排列。

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

代碼貼出來

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

舉報

0/150
提交
取消
JavaScript進階篇
  • 參與學習       468832    人
  • 解答問題       22582    個

本課程從如何插入JS代碼開始,帶您進入網頁動態交互世界

進入課程

sort為什么會這樣排序,100為什么在0.1和18之間,怎樣運算的

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

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

幫助反饋 APP下載

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

公眾號

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