JS sort方法基于數(shù)組對(duì)象屬性值排序
sort方法接收一個(gè)函數(shù)作為參數(shù),這里嵌套一層函數(shù)用來接收對(duì)象屬性名,其他部分代碼與正常使用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ù)組對(duì)象中的某個(gè)屬性值進(jìn)行排序的方法
* 使用例子:newArray.sort(sortBy('number',false)) //表示根據(jù)number屬性降序排列;若第二個(gè)參數(shù)不傳遞,默認(rèn)表示升序排序
* @param attr 排序的屬性 如number屬性
* @param rev true表示升序排列,false降序排序
* */
sortBy: function(attr,rev){
//第二個(gè)參數(shù)沒有傳遞 默認(rèn)升序排列
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)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- JS對(duì)象數(shù)組排序方法測試代碼示例
- JavaScript將對(duì)象數(shù)組按字母順序排序的方法詳解
- JavaScript中好用的數(shù)組對(duì)象排序方法分享
- javascript中的Array對(duì)象(數(shù)組的合并、轉(zhuǎn)換、迭代、排序、堆棧)
- JS深入學(xué)習(xí)之?dāng)?shù)組對(duì)象排序操作示例
- js 根據(jù)對(duì)象數(shù)組中的屬性進(jìn)行排序?qū)崿F(xiàn)代碼
- JS實(shí)現(xiàn)給數(shù)組對(duì)象排序的方法分析
- JS實(shí)現(xiàn)根據(jù)數(shù)組對(duì)象的某一屬性排序操作示例
- js中的數(shù)組對(duì)象排序分析
- JS實(shí)現(xiàn)json對(duì)象數(shù)組按對(duì)象屬性排序操作示例
- JavaScripts數(shù)組里的對(duì)象排序的24個(gè)方法(最新整理收藏)
相關(guān)文章
微信小程序MUI導(dǎo)航欄透明漸變功能示例(通過改變r(jià)gba的a值實(shí)現(xiàn))
這篇文章主要介紹了微信小程序MUI導(dǎo)航欄透明漸變功能,結(jié)合實(shí)例形式分析了通過改變r(jià)gba的a值實(shí)現(xiàn)透明度漸變功能的相關(guān)操作技巧,需要的朋友可以參考下2019-01-01
一文帶你搞懂JS中導(dǎo)入模塊import和require的區(qū)別
JavaScript中,模塊是一種可重用的代碼塊,它將一些代碼打包成一個(gè)單獨(dú)的單元,并且可以在其他代碼中進(jìn)行導(dǎo)入和使用。JavaScript中有兩種常用的方式:使用import和require,本文主要聊聊他們二者的區(qū)別2023-03-03
微信小程序數(shù)據(jù)操作指南之從綁定到更新的操作方法
在微信小程序開發(fā)中,數(shù)據(jù)操作是不可或缺的一環(huán),文章詳細(xì)介紹了數(shù)據(jù)綁定、更新等方法,并提供示例和注意事項(xiàng),幫助開發(fā)者更好地應(yīng)用這些技術(shù),本文給大家介紹微信小程序數(shù)據(jù)操作指南之從綁定到更新,感興趣的朋友跟隨小編一起看看吧2024-10-10
JavaScript實(shí)現(xiàn)跟隨滾動(dòng)緩沖運(yùn)動(dòng)廣告框
這篇文章主要為大家詳細(xì)介紹了JavaScript實(shí)現(xiàn)跟隨滾動(dòng)緩沖運(yùn)動(dòng)廣告框,頁面左右兩邊跟隨式廣告框,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-07-07
JS實(shí)現(xiàn)定時(shí)頁面彈出類似QQ新聞的提示框
類似QQ新聞的提示框要求頁面每隔半小時(shí)彈出一次提示消息,下面有個(gè)不錯(cuò)的實(shí)現(xiàn)方法,感興趣的朋友可以參考下2013-11-11
BootStrap使用popover插件實(shí)現(xiàn)鼠標(biāo)經(jīng)過顯示并保持顯示框
這篇文章主要介紹了BootStrap使用popover插件實(shí)現(xiàn)鼠標(biāo)經(jīng)過顯示并保持顯示框的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2016-06-06

