JavaScript中數(shù)組Array.sort()排序方法詳解
JavaScript中數(shù)組的sort()方法主要用于對數(shù)組的元素進行排序。其中,sort()方法有一個可選參數(shù)。但是,此參數(shù)必須是函數(shù)。 數(shù)組在調(diào)用sort()方法時,如果沒有傳參將按字母順序(字符編碼順序)對數(shù)組中的元素進行排序,如果想按照其他標準進行排序,就需要進行傳一個參數(shù)且為函數(shù),該函數(shù)要比較兩個值,并且會返回一個用于說明這兩個值的相對順序的數(shù)字。
1、對數(shù)字數(shù)組進行由小到大的順序進行排序。
代碼:
var arr = [22,12,3,43,56,47,4]; arr.sort(); console.log(arr); // [12, 22, 3, 4, 43, 47, 56] arr.sort(function (m, n) { if (m < n) return -1 else if (m > n) return 1 else return 0 }); console.log(arr); // [3, 4, 12, 22, 43, 47, 56]
2、對字符串數(shù)組執(zhí)行不區(qū)分大小寫的字母表排序。
代碼:
var arr = ['abc', 'Def', 'BoC', 'FED']; console.log(arr.sort()); // ["BoC", "Def", "FED", "abc"] console.log(arr.sort(function(s, t){ var a = s.toLowerCase(); var b = t.toLowerCase(); if (a < b) return -1; if (a > b) return 1; return 0; })); // ["abc", "BoC", "Def", "FED"]
3、對包含對象的數(shù)組排序,要求根據(jù)對象中的年齡進行由大到小的順序排列
代碼:
var arr = [{'name': '張三', age: 26},{'name': '李四', age: 12},{'name': '王五', age: 37},{'name': '趙六', age: 4}]; var objectArraySort = function (keyName) { return function (objectN, objectM) { var valueN = objectN[keyName] var valueM = objectM[keyName] if (valueN < valueM) return 1 else if (valueN > valueM) return -1 else return 0 } } arr.sort(objectArraySort('age')) console.log(arr) // [{'name': '王五', age: 37},{'name': '張三', age: 26},{'name': '李四', age: 12},{'name': '趙六', age: 4}]
以上就是本文的全部內(nèi)容,希望本文的內(nèi)容對大家的學習或者工作能帶來一定的幫助,同時也希望多多支持腳本之家!
- Js數(shù)組排序函數(shù)sort()介紹
- js對數(shù)組中的數(shù)字從小到大排序?qū)崿F(xiàn)代碼
- Javascript數(shù)組的排序 sort()方法和reverse()方法
- JS數(shù)組排序技巧匯總(冒泡、sort、快速、希爾等排序)
- js中數(shù)組(Array)的排序(sort)注意事項說明
- js sort 二維數(shù)組排序的用法小結
- JS實現(xiàn)根據(jù)數(shù)組對象的某一屬性排序操作示例
- js使用Array.prototype.sort()對數(shù)組對象排序的方法
- JS實現(xiàn)json對象數(shù)組按對象屬性排序操作示例
- js實現(xiàn)嵌套數(shù)組重排序
相關文章
js使用for循環(huán)及if語句判斷多個一樣的name
這篇文章主要介紹了js使用for循環(huán)機if語句判斷多個一樣的name,此法比較實用,需要的朋友可以參考下2014-09-09JavaScript?中URL?查詢字符串(query?string)的序列與反序列化的方法
在 JavaScript 中,可以使用?URLSearchParams?對象來處理 URL 中的查詢字符串,這篇文章主要介紹了JavaScript?中URL查詢字符串(query?string)的序列與反序列化,需要的朋友可以參考下2023-01-01ES6 Iterator接口和for...of循環(huán)用法分析
這篇文章主要介紹了ES6 Iterator接口和for...of循環(huán)用法,結合實例形式分析了Iterator接口和for...of循環(huán)相關使用技巧,需要的朋友可以參考下2019-07-07JavaScript 經(jīng)典實例日常收集整理(常用經(jīng)典)
本文是小編日常收集整理些js經(jīng)典實例,非常具有參考借鑒價值,需要的朋友一起了解了解吧2016-03-03localResizeIMG先壓縮后使用ajax無刷新上傳(移動端)
隨著技術的發(fā)展,移動設備像素越來越高,但是這么大的圖片怎么上傳呢?下面小編就給大家一起學習移動端圖片上傳的方法之localResizeIMG先壓縮后使用ajax無刷新上傳,需要的朋友可以參考下2015-08-08