91久久久久久久久_欧美日韩中文_在线观看中文字幕亚洲_夜夜骑首页_精品久久伊人_天天色天天射天天操

當前位置: 首頁IT技術 → 一個關于JS數(shù)組通過手動排序問題的解決方案

一個關于JS數(shù)組通過手動排序問題的解決方案

更多

問題實例: 

var arr = new Array(5)
arr[0] = "Jani"
arr[1] = "Hege"
arr[2] = "Stale"
arr[3] = "Kai Jim"
arr[4] = "Borge"

document.write(arr + "<br />")
arr.splice(2,2)
document.write(arr + "<br />")
這段代碼的輸出結果是:
Jani,Hege,Stale,Kai Jim,Borge
Jani,Hege,Borge

同樣是數(shù)組的splice()方法,下面這段代碼結果卻不一樣
var Num_1=[];
var Num_2=[];
var num;

for(var i=1;i<50;i++){
Num_1.push(i<10?"0"+i:i);
}
for(var i=0;i<5;i++){
num=Num_1.splice(Math.floor(Math.random()*Num_1.length),1);
Num_2.push(num);
}
document.write("隨機產(chǎn)生的號碼:"+Num_2.sort());

splice(x,y)方法是從索引的x開始刪除y個元素
但是num=Num_1.splice(Math.floor(Math.random()*Num_1.length),1);
這個應該是刪除一個元素 還有49個元素
可是問什么num就是一個數(shù)

求解為什么
還有sort()方法是數(shù)組排序,我聲明一個數(shù)組添加5個數(shù)據(jù)型元素,然后用sort()方法卻不能排序,需要設置個參數(shù)
<script type="text/javascript">

var arr = new Array(6)
arr[0] = "10"
arr[1] = "5"
arr[2] = "40"
arr[3] = "25"
arr[4] = "1000"
arr[5] = "1"

document.write(arr + "<br />")
document.write(arr.sort())

</script>
這個結果是
10,5,40,25,1000,1
1,10,1000,25,40,5
沒有排序


<script type="text/javascript">

function sortNumber(a,b)
{
return a - b
}

var arr = new Array(6)
arr[0] = "10"
arr[1] = "5"
arr[2] = "40"
arr[3] = "25"
arr[4] = "1000"
arr[5] = "1"

document.write(arr + "<br />")
document.write(arr.sort(sortNumber))

</script>
需要在設置個方法才能排序

而最上面?zhèn)的那段程序直接用sort()就能排序,沒有參數(shù),為什么 求解?

解決方案:

1. splice是直接操作原數(shù)組的,并且返回的不是原數(shù)組,而是移除的元素組成的數(shù)組。所以你splice(n, 1)返回的當然是只有一個元素的數(shù)組。
// [0,1,2].splice(1,1) : [1]

2. sort是可以不用傳遞比較函數(shù)的,它會直接使用默認的比較。你的第二段代碼中排序是成功的,1,10,1000,25,40,5,你沒發(fā)現(xiàn)它們起始數(shù)字是遞增的嗎?因為你push進去的是字符串,它是以字符串比較來排序的("b">"a", "b"<"ba")。同理,第一段代碼你覺得是按數(shù)字排序,實際還是按字符串排序的,不信你去掉1位數(shù)的"0"前綴
熱門評論
最新評論
發(fā)表評論 查看所有評論(0)
昵稱:
表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
字數(shù): 0/500 (您的評論需要經(jīng)過審核才能顯示)
主站蜘蛛池模板: 久久久久女人精品毛片九一 | 国产高清视频在线 | 宅男噜噜噜66一区二区 | 午夜免费av | www.欧美精品 | 天天综合视频 | 欧美午夜精品久久久久免费视 | 日韩在线视频网站 | 日本不卡在线视频 | 五月精品| 久久99久久久 | 色综合天天综合网天天狠天天 | 日韩精品久久久久久 | 丁香九月婷婷 | 国产激情视频在线 | 一级片免费观看 | 91久久久久久久久 | 精品视频一区二区三区四区 | 午夜免费av | 日韩一二区 | 一级理论片| 97cao| 欧美日韩一 | 精品视频免费在线观看 | 欧美激情一区二区 | 亚洲黄色影院 | 99热国产| 99在线视频免费观看 | 国产精品视频免费看 | a视频 | 国产午夜av| 婷婷丁香六月 | 97精品国产露脸对白 | 天天操综合网 | 久久性色| 午夜在线 | 日本黄色视屏 | 久久久麻豆 | 亚洲天堂一区二区三区 | 亚洲成人二区 | 少妇一级淫片免费观看 |