JS sort方法基于數(shù)組對象屬性值排序
更新時間:2020年07月10日 08:55:12 作者:yuwenjing
這篇文章主要介紹了JS sort方法基于數(shù)組對象屬性值排序,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
sort方法接收一個函數(shù)作為參數(shù),這里嵌套一層函數(shù)用來接收對象屬性名,其他部分代碼與正常使用sort方法相同.
var arr = [ {name:'zopp',age:0}, {name:'gpp',age:18}, {name:'yjj',age:8} ]; function compare(property){ return function(a,b){ var value1 = a[property]; var value2 = b[property]; return value1 - value2; } } console.log(arr.sort(compare('age')))
如何根據(jù)參數(shù)不同,來確定是升序排列,還是降序排序呢?
/**數(shù)組根據(jù)數(shù)組對象中的某個屬性值進行排序的方法 * 使用例子:newArray.sort(sortBy('number',false)) //表示根據(jù)number屬性降序排列;若第二個參數(shù)不傳遞,默認表示升序排序 * @param attr 排序的屬性 如number屬性 * @param rev true表示升序排列,false降序排序 * */ sortBy: function(attr,rev){ //第二個參數(shù)沒有傳遞 默認升序排列 if(rev == undefined){ rev = 1; }else{ rev = (rev) ? 1 : -1; } return function(a,b){ a = a[attr]; b = b[attr]; if(a < b){ return rev * -1; } if(a > b){ return rev * 1; } return 0; } }
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
您可能感興趣的文章:
- JS對象數(shù)組排序方法測試代碼示例
- JavaScript將對象數(shù)組按字母順序排序的方法詳解
- JavaScript中好用的數(shù)組對象排序方法分享
- javascript中的Array對象(數(shù)組的合并、轉(zhuǎn)換、迭代、排序、堆棧)
- JS深入學(xué)習(xí)之?dāng)?shù)組對象排序操作示例
- js 根據(jù)對象數(shù)組中的屬性進行排序?qū)崿F(xiàn)代碼
- JS實現(xiàn)給數(shù)組對象排序的方法分析
- JS實現(xiàn)根據(jù)數(shù)組對象的某一屬性排序操作示例
- js中的數(shù)組對象排序分析
- JS實現(xiàn)json對象數(shù)組按對象屬性排序操作示例
- JavaScripts數(shù)組里的對象排序的24個方法(最新整理收藏)
相關(guān)文章
uniapp開發(fā)App出現(xiàn)網(wǎng)絡(luò)異常的解決方法
這篇文章主要給大家介紹了uniapp開發(fā)App出現(xiàn)網(wǎng)絡(luò)異常的解決方案,文中有相關(guān)的解決方法和步驟,具有一定的參考價值,需要的朋友可以參考下2023-09-09JS使用window.requestAnimationFrame()對列表切片進行渲染
這篇文章主要為大家介紹了JS使用requestAnimationFrame對列表切片進行渲染,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-05-05js定時器(執(zhí)行一次、重復(fù)執(zhí)行)
這篇文章主要分享一段js代碼,有關(guān)js定時器的小例子,分為執(zhí)行一次的定時器與重復(fù)執(zhí)行的定時器,需要的朋友可以參考下2014-03-03