最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

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

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

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)用的方法如下:
復(fù)制代碼 代碼如下:

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

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

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

本人js菜鳥,如果有什么想法啥的,直接留言,相互交流一下
  • uniapp圖片展示自適應(yīng)等比例縮放方法舉例

    uniapp圖片展示自適應(yīng)等比例縮放方法舉例

    這篇文章主要給大家介紹了關(guān)于uniapp圖片展示自適應(yīng)等比例縮放方法的相關(guān)資料,在uniapp頁面展示中會遇到圖片展示問題,等比縮放或者自適應(yīng)view大小,需要的朋友可以參考下
    2023-10-10
  • javascript實現(xiàn)一個數(shù)值加法函數(shù)

    javascript實現(xiàn)一個數(shù)值加法函數(shù)

    這篇文章主要介紹了javascript實現(xiàn)一個數(shù)值加法函數(shù),十分的簡單實用,方便大家理解javascript,有需要的小伙伴可以參考下。
    2015-06-06
  • 詳解JavaScript什么情況下不建議使用箭頭函數(shù)

    詳解JavaScript什么情況下不建議使用箭頭函數(shù)

    箭頭函數(shù)作為ES6新增的語法,在使用時不僅能使得代碼更加簡潔,而且在某些場景避免this指向問題。但是箭頭函數(shù)不是萬能的,也有自己的缺點以及不適用的場景,本文總結(jié)了JavaScript什么情況下不建議使用箭頭函數(shù),感興趣的可以了解一下
    2022-06-06
  • layui table表格數(shù)據(jù)的新增,修改,刪除,查詢,雙擊獲取行數(shù)據(jù)方式

    layui table表格數(shù)據(jù)的新增,修改,刪除,查詢,雙擊獲取行數(shù)據(jù)方式

    今天小編就為大家分享一篇layui table表格數(shù)據(jù)的新增,修改,刪除,查詢,雙擊獲取行數(shù)據(jù)方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • js實現(xiàn)點擊文本框顯示日期選擇器特效代碼分享

    js實現(xiàn)點擊文本框顯示日期選擇器特效代碼分享

    這篇文章主要為大家詳細(xì)介紹了javascript實現(xiàn)點擊文本框顯示日期選擇器特效,提高了工作效率,推薦給大家,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2015-08-08
  • js中獲取時間new Date()的全面介紹

    js中獲取時間new Date()的全面介紹

    下面小編就為大家?guī)硪黄猨s中獲取時間new Date()的全面介紹。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-06-06
  • 原生javascript實現(xiàn)文件異步上傳的實例講解

    原生javascript實現(xiàn)文件異步上傳的實例講解

    下面小編就為大家?guī)硪黄鷍avascript實現(xiàn)文件異步上傳的實例講解。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-10-10
  • js結(jié)合css實現(xiàn)登錄后才能復(fù)制的效果實例

    js結(jié)合css實現(xiàn)登錄后才能復(fù)制的效果實例

    很多網(wǎng)站都有登錄后才能復(fù)制的限制,什么原理呢?css屬性user-select:none,通常會采用這種方式來禁止復(fù)制文本。但瀏覽開發(fā)者工具-審查元素,取消此樣式后,就可以選中文本了。想要完整地禁止復(fù)制,還需要通過js控制選擇的內(nèi)容。
    2023-07-07
  • 最新評論

    沾化县| 土默特左旗| 屏南县| 全州县| 三江| 武乡县| 黔南| 句容市| 孝义市| 安岳县| 永嘉县| 乌什县| 阳山县| 孝感市| 洮南市| 玉林市| 永寿县| 临高县| 华阴市| 加查县| 辽宁省| 德化县| 芦溪县| 蒙阴县| 金溪县| 建阳市| 蒲江县| 叙永县| 永顺县| 义马市| 宁波市| 手游| 桦川县| 兴化市| 哈巴河县| 海城市| 仁化县| 黄浦区| 水城县| 石首市| 通化县|