欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

擴展js對象數(shù)組的OrderByAsc和OrderByDesc方法實現(xiàn)思路

 更新時間:2013年05月17日 18:03:46   作者:  
js的擴展方法是基于原型的,如Array.prototype.XXXX就是給Array擴展XXX方法,然后數(shù)組都能使用這個方法了,在對象數(shù)組里面經(jīng)常有根據(jù)屬性來進行排序的,升序,降序的,下面與大家分享自己寫的一個
看了一段時間關于js原型的知識,js的擴展方法是基于原型的,如Array.prototype.XXXX就是給Array擴展XXX方法,然后數(shù)組都能使用這個方法了。

在對象數(shù)組里面經(jīng)常有根據(jù)屬性來進行排序的,升序,降序的,于是自己就想寫一個類似于C#里面的orderBy的方法,代碼如下:
復制代碼 代碼如下:

Array.prototype.OrderByAsc = function (func) {
var m = {};
for (var i = 0; i < this.length; i++) {
for (var k = 0; k < this.length; k++) {
if (func(this[i]) < func(this[k])) {
m = this[k];
this[k] = this[i];
this[i] = m;
}
}
}
return this;
}
Array.prototype.OrderByDesc = function (func) {
var m = {};
for (var i = 0; i < this.length; i++) {
for (var k = 0; k < this.length; k++) {
if (func(this[i]) > func(this[k])) {
m = this[k];
this[k] = this[i];
this[i] = m;
}
}
}
return this;
}

調(diào)用的方法如下:
復制代碼 代碼如下:

var arr = [{ name: 'aaa', grade: 20 }, { name: 'ccc', grade: 30 }, { name: 'bbb', grade: 40 }];
var orderArr = arr.OrderByDesc(function (a) {
return a.grade;
});

然后輸出一下,看一下結(jié)果吧:
復制代碼 代碼如下:

for (var i = 0; i < orderArr.length; i++) {
document.write(orderArr[i].name);
}

本人js菜鳥,如果有什么想法啥的,直接留言,相互交流一下

相關文章

  • javascript數(shù)組去重3種方法的性能測試與比較

    javascript數(shù)組去重3種方法的性能測試與比較

    面試題中有一題數(shù)組去重,首先想到的是對象存鍵值的方法可是遇到不同類型又能轉(zhuǎn)換成同樣的字符串的就完了接下來為大家介紹下雙重循環(huán)/存鍵值和類型實現(xiàn)去重,感興趣的各位可以參考下哈
    2013-03-03
  • 微信小程序全局變量改變監(jiān)聽的實現(xiàn)方法

    微信小程序全局變量改變監(jiān)聽的實現(xiàn)方法

    這篇文章主要給大家介紹了關于微信小程序全局變量改變監(jiān)聽的實現(xiàn)方法,文中通過示例代碼介紹的非常詳細,對大家學習或者使用微信小程序具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-07-07
  • 小程序?qū)崿F(xiàn)計時器功能

    小程序?qū)崿F(xiàn)計時器功能

    這篇文章主要為大家詳細介紹了小程序?qū)崿F(xiàn)計時器功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-07-07
  • Javascript從數(shù)組中隨機取出不同元素的兩種方法

    Javascript從數(shù)組中隨機取出不同元素的兩種方法

    這篇文章給大家分享了兩種Javascript從數(shù)組中隨機取出不同元素的方法,大家可以都學習學習,這樣更能有助于大家的學習和理解,下面來一起看看吧
    2016-09-09
  • js倒計時搶購實例

    js倒計時搶購實例

    這篇文章主要介紹了js倒計時簡單實現(xiàn)方法,方便一些提示重要日期的來臨,本實例特別適合用于商品倒計時搶購活動,感興趣的小伙伴們可以參考一下
    2015-12-12
  • Bootstrap媒體對象學習使用

    Bootstrap媒體對象學習使用

    這篇文章主要為大家詳細介紹了Bootstrap媒體對象的相關資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-03-03
  • JavaScript中0和

    JavaScript中0和""比較引發(fā)的問題

    這篇文章主要介紹了JavaScript中0和""比較引發(fā)的問題,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2016-05-05
  • 點評js異步加載的4種方式

    點評js異步加載的4種方式

    這篇文章主要介紹了點評js異步加載的4種方式,幫助大家更全面的了解js異步加載方式,感興趣的小伙伴們可以參考一下
    2015-12-12
  • js實現(xiàn)簡單放大鏡特效

    js實現(xiàn)簡單放大鏡特效

    這篇文章主要為大家詳細介紹了js實現(xiàn)簡單放大鏡特效,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-03-03
  • 詳解JavaScript閉包的優(yōu)缺點和作用

    詳解JavaScript閉包的優(yōu)缺點和作用

    閉包是指在 JavaScript 中,內(nèi)部函數(shù)可以訪問其外部函數(shù)作用域中的變量,即使外部函數(shù)已經(jīng)執(zhí)行完畢,這種特性被稱為閉包,本文將給大家介紹一下JavaScript閉包的優(yōu)缺點和作用,需要的朋友可以參考下
    2023-09-09

最新評論