91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

JS中如何按照一定規則對數組元素進行排序

發布時間:2021-08-27 15:44:45 來源:億速云 閱讀:862 作者:chen 欄目:web開發

這篇文章主要講解了“JS中如何按照一定規則對數組元素進行排序”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“JS中如何按照一定規則對數組元素進行排序”吧!

今天本文的主要內容是:對數組元素按照一定規則進行排序。廢話不多說,下面就給大家就是3種數組元素排序方法。

方法1:利用for循環

說到利用for循環進行數組排序,就想到了冒泡排序,下面看看實現代碼:

//每輪依次比較相鄰兩個數的大小,后面比前面小則交換
var b=0//設置用來調換位置的值
var a=[1,9,33,2,5,34,23,98,14]//冒泡排序
for(var i=0;i<a.length;i++){
	for(var j=0;j<a.length;j++){
		if(a[j]>a[j+1]){
			b=a[j]
			a[j]=a[j+1]
			a[j+1]=b
		}
	}
}
console.log(a)

輸出結果:

JS中如何按照一定規則對數組元素進行排序

上面代碼是從小到大排序,如果想要從大到小排序,可以將if語句的判斷添加修改一下:

if(a[j]>a[j+1]){
...
}

JS中如何按照一定規則對數組元素進行排序

方法2:利用sort() 方法

sort() 方法能夠根據一定條件對數組元素進行排序。

語法:array.sort([函數])

sort() 方法兩種情況:

  • 當方法的參數為空時,則按字母順序對數組中的元素進行從小到大排序。

所謂的字母順序,實際上是根據字母在字符編碼表中的順序進行排列的,每個字符在字符表中都有一個唯一的編號。

var a=['e','a','f','b','c','h','g','z','i']
a.sort();  //按字母順序對元素進行排序
console.log(a);

輸出結果:

JS中如何按照一定規則對數組元素進行排序

如果元素不是字符串,則 sort() 方法試圖把數組元素都轉換成字符串,以便進行比較。需要注意當數字是按字母順序排列時"40"將排在"5"前面。

var a=[1,2,40,4,5,50,6,7,8]
a.sort();  //按字母順序對元素進行排序
console.log(a);

輸出結果:

JS中如何按照一定規則對數組元素進行排序

此時就需要通過一個函數作為參數來調用,即下面的第二種情況:

  • 當參數為一個函數時,將按函數指定的規則排序數組元素。

var a=[1,2,40,4,5,50,6,7,8]
a.sort(function(a,b){
     return a-b;//從小到大排序
     //return b-a;//從大到小排序
});
console.log(a);

輸出結果:

JS中如何按照一定規則對數組元素進行排序

當數組元素的前綴為數字而后綴為字符串時,如果希望這些元素能按數字大小進行排序,此時需對匿名函數中的參數作一些變通處理。

var a=['345px','23px','10px','1000px'];
a.sort(function(a,b){
     return parseInt(a)-parseInt(b);;//從小到大排序
     //return parseInt(b)-parseInt(a);//從大到小排序
});
console.log(a);

輸出結果:

JS中如何按照一定規則對數組元素進行排序

方法3:利用reverse() 方法

如何不想將數組元素從小到大(或從大到小)進行排序,而是想倒序排序呢?那么可以使用reverse() 方法。

reverse() 方法能夠顛倒數組元素的排列順序,該方法不需要參數,直接 數組對象.reverse()即可。

var a=['345px','23px','10px','1000px'];
a.reverse();
console.log(a);

輸出結果:

JS中如何按照一定規則對數組元素進行排序

說明:

sort()和reverse() 方法都是在原數組基礎上進行操作,而不是創建新的數組;因此會改變原數組。

感謝各位的閱讀,以上就是“JS中如何按照一定規則對數組元素進行排序”的內容了,經過本文的學習后,相信大家對JS中如何按照一定規則對數組元素進行排序這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

建水县| 尼勒克县| 化州市| 海阳市| 夹江县| 阿鲁科尔沁旗| 若尔盖县| 衡阳县| 沭阳县| 盐池县| 秭归县| 通道| 池州市| 镇沅| 正蓝旗| 阳新县| 富锦市| 承德市| 江阴市| 景宁| 康平县| 石河子市| 临沭县| 万安县| 桃江县| 张家川| 文登市| 景泰县| 冕宁县| 临洮县| 邛崃市| 云安县| 无锡市| 嫩江县| 宜兰市| 汝城县| 郎溪县| 石屏县| 长宁区| 大英县| 黔东|