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

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

關于排序函數的返回值

<!DOCTYPE html>

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>Array對象 </title>

<script type="text/javascript">

? ?function sortNum(a,b) {

? ? ? ?if(a>=b){

? ? ? ? ? ?return 1

? ? ? ?}

? ? ? ?else{

? ? ? ? ? ?return -1

? ? ? ?}

? ?}

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

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

</script>

</head>

<body>

</body>

</html>

為什么我寫的排序函數,最終沒有按順序排呢,是亂序

輸出結果為:1,100,16,50,6,80

正在回答

1 回答

因為數組里存的字符串呀,(重點)字符串比較大小和數字比較大小是不一樣的,可以這樣寫:if(parseInt(a)>=parseInt(b)){return 1}else{return -1} 先把字符串轉成數字再比較大小

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

沐oo音 提問者

非常感謝!
2018-04-26 回復 有任何疑惑可以回復我~

舉報

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

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

進入課程

關于排序函數的返回值

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

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

幫助反饋 APP下載

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

公眾號

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