老熟女激烈的高潮_日韩一级黄色录像_亚洲1区2区3区视频_精品少妇一区二区三区在线播放_国产欧美日产久久_午夜福利精品导航凹凸

重慶分公司,新征程啟航

為企業提供網站建設、域名注冊、服務器等服務

javascript中的sort()方法怎么使用

本文小編為大家詳細介紹“javascript中的sort()方法怎么使用”,內容詳細,步驟清晰,細節處理妥當,希望這篇“javascript中的sort()方法怎么使用”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。

成都創新互聯提供成都做網站、成都網站建設、成都外貿網站建設、網頁設計,成都品牌網站建設廣告投放平臺等致力于企業網站建設與公司網站制作,10年的網站開發和建站經驗,助力企業信息化建設,成功案例突破上千,是您實現網站建設的好選擇.

在javascript中,sort()方法用于數組排序,該方法能夠根據一定條件對數組元素進行排序,語法格式“arrayObject.sort(sortby)”。如果調用sort()方法時沒有傳遞參數,則按字母順序對數組中的元素進行排序。

本教程操作環境:windows7系統、javascript1.8.5版、Dell G3電腦。

使用 sort() 對數組排序

sort() 方法能夠根據一定條件對數組元素進行排序。如果調用 sort() 方法時沒有傳遞參數,則按字母順序對數組中的元素進行排序。

var a = ["a","e","d","b","c"];  //定義數組
a.sort();  //按字母順序對元素進行排序
console.log(a);  //返回數組[a,b,c,d,e]

使用 sort() 方法時,應該注意下面幾個問題。

1) 所謂的字母順序,實際上是根據字母在字符編碼表中的順序進行排列的,每個字符在字符表中都有一個唯一的編號。

2) 如果元素不是字符串,則 sort() 方法試圖把數組元素都轉換成字符串,以便進行比較。

3) sort() 方法將根據元素值進行逐位比較,而不是根據字符串的個數進行排序。

var a = ["aba","baa","aab"];  定義數組
a.sort();  //按字母順序對元素進行排序
console.log(a);  //返回數組[aab,aba,baa]

在排序時,首先比較每個元素的第 1 個字符,在第 1 個字符相同的情況下,再比較第 2 個字符,以此類推。

4) 在任何情況下,數組中 undefined 的元素都被排序在末尾。

5) sort() 方法是在原數組基礎上進行排序操作的,不會創建新的數組。

sort() 方法不僅按字母順序進行排序,還可以根據其他順序執行操作。這時就必須為方法提供一個函數參數,該函數要比較兩個值,然后返回一個用于說明這兩個值的相對順序的數字。排序函數應該具有兩個參數 a 和 b,,其返回值如下。

  • 如果根據自定義評判標準,a 小于 b,在排序后的數組中 a 應該出現在 b 之前,就返回一個小于 0 的值。

  • 如果 a 等于 b,就返回 0。

  • 如果 a 大于 b,就返回一個大于 0 的值。

示例1

在下面示例中,將根據排序函數比較數組中每個元素的大小,并按從小到大的順序執行排序。

function f(a,b) {  //排序函數
    return (a - b);  //返回比較參數
}
var a = [3,1,2,4,5,7,6,8,0,9];  //定義數組
a.sort(f);  //根據數字大小由小到大進行排序
console.log(a);  //返回數組[0,1,2,3,4,5,6,4,7,8,9]

如果按從大到小的順序執行,則讓返回值取反即可。代碼如下:

function f(a,b) {  //排序函數
    return -(a - b);  //取反并返回比較參數
}
var a = [3,1,2,4,5,7,6,8,0,9];  //定義數組
a.sort(f);  //根據數字大小由小到大進行排序
console.log(a);  //返回數組[9,8,7,6,5,4,3,2,1,0]

示例2

根據奇偶性質排列數組。

sort() 用法比較靈活,主要是函數排序比較。例如,如果根據奇偶數順序排序數組,只需要判斷順序函數中兩個參數是否為奇偶數,并決定排列順序。

function f(a, b) {  //排序函數
    var a = a % 2;  //獲取參數a的奇偶性
    var b = b % 2;  //獲取參數b的奇偶性
    if (a == 0) return 1;  //如果參數a為偶數,則排在左邊
    if (b == 0) return -1;  //如果參數b為偶數,則排在右邊
}
var a = [3,1,2,4,5,7,6,8,0,9];  //定義數組
a.sort(f);  //根據數字大小由大到小進行排序
console.log(a);  //返回數組[3,1,5,7,9,0,8,6,4,2]

sort() 方法在調用排序函數時,對每個元素值傳遞給排序函數,如果元素值為偶數,則保留其位置不動;如果元素值為奇數,則調換參數 a 和 b 的顯示順序,從而實現對數組中所有元素執行奇偶排序。如果希望偶數排在前面,奇數排在后面,則只需要取返回值。排序函數如下。

function f(a, b) {
    var a = a % 2;
    var b = b % 2;
    if (a == 0) return -1;
    if (b == 0) return 1;
}

示例3

不區分大小寫排序字符串。

在正常情況下,對字符串進行排序是區分大小寫的,這是因為每個大寫字母和小寫字母在字符編碼表中的順序是不同的,大寫字母大于小寫字母。

var a = ["aB", "Ab", "Ba", "bA"];  //定義數組
a.sort();  //默認方法排序
console.log(a);  //返回數組["Ab", "Ba", "aB", "bA"]

大寫字母總是排在左側,如果讓小寫字母總是排在左側,可以設計:

function f(a ,b) {
    return (a < b);
}
var a = ["aB", "Ab", "Ba", "bA"];  //定義數組
a.sort();  //默認方法排序
console.log(a);  //返回數組["Ab", "Ba", "aB", "bA"]

對于字母比較大小時,JavaScript 是根據字符編碼大小來決定的,當為 true 時,則返回 1;為 false 時,則返回 -1。

如果不希望區分大小寫,大寫字母和小寫字母按相同順序排列,可以設計:

function f(a, b) {
    var a = a.toLowerCase;
    var b = b.toLowerCase; 
    if (a < b) {
        return 1;
    }
    else {
        return -1;
    }
}
var a = ["aB", "Ab", "Ba", "bA"];  //定義數組
a.sort();  //默認方法排序
console.log(a);  //返回數組["aB", "Ab", "Ba", "bA"]

如果要調整排列順序,則設置返回值取反即可。

示例4

把浮點數和整數分開顯示。

function f(a, b) {  //排序函數
    if (a > Math.floor(a)) return 1;  //如果a是浮點數,則調換位置
    if (b > Math.floor(b)) return -1;  //如果b是浮點數,則調換位置
}
var a = [3.5555, 1.23456, 3, 2.11111, 5, 7, 3];  //定義數組
a.sort(f);  //進行篩選
console.log(a);  //返回數組[3,5,7,3,2.11111,1.23456,3.55555]

如果要調整排序順序,則設置返回值取反即可。

讀到這里,這篇“javascript中的sort()方法怎么使用”文章已經介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內容的文章,歡迎關注創新互聯行業資訊頻道。


新聞標題:javascript中的sort()方法怎么使用
地址分享:http://www.xueling.net.cn/article/jjcojp.html

其他資訊

在線咨詢
服務熱線
服務熱線:028-86922220
TOP
主站蜘蛛池模板: 欧美激情国产精品视频一区二区 | 亚洲一及片 | 日本午夜啪啪 | 黄色激情毛片 | 免费在线视频a | 成人欧美在线视频 | 扒开双腿猛进入喷水高潮叫声 | 久本草在线中文字幕亚洲 | av久久网站| 国产色婷婷精品综合在线 | 亚洲AV成人无码网站大全 | 天天干天天做天天操 | 伊人天天干 | 国产精品99久久久久久一二区 | 在线观看高清视频 | 日韩日韩日韩日韩日韩 | 国产精品99久久久久久www | 亚洲第一天堂在线观看 | 国内精品国产三级国产在线专 | 年轻的朋友3中文 | 国产av明星换脸精品网站 | 超碰成人av| 99视频内射三四 | 欧洲精品视频一区二区 | 亚洲天堂网络 | 四虎在线网址 | 精品美女久久久久 | 国产美女一级二级三级chinese | 8av国产精品爽爽va在线观看 | 亚洲国产精品久久无人区 | 全免费一级毛片免费看 | 亚洲精品中文在线观看 | 国产精品久久欧美久久一区 | 日韩色性 | 欧美性猛交╳xx╳动态图 | 亚洲第一狼人天堂久久 | 国产亚洲精品成人av久久影院 | 久久国产精品久久久久久 | 午夜男女爽爽影院a片免费 午夜影院0606免费 | AA级女人喷水视频免费 | av免费观看入口 |