您好,登錄后才能下訂單哦!
這期內容當中小編將會給大家帶來有關sort排序算法的原理是什么,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
js中sort方法用于對數組的元素進行排序,并返回數組。默認排序順序是根據字符串Unicode碼點。
sort的語法排序
arrayObject.sort(sortby)
參數sortby:可選。用于規定排序順序,必須是函數。
注:如果調用該方法時沒有使用參數,將按字母順序對數組中的元素進行排序,說得更精確點,是按照字符編碼的順序進行排序。要實現這一點,首先應把數組的元素都轉換成字符串(如有必要),以便進行比較。
sort排序有哪些
默認按照字母順序排序
vararr1=['a','d','c','b'];
arr.sort();//['a','b','c','d']
vararr2=[10,5,40,25,100,1];
arr2.sort();//[1,10,100,25,40,5]這次排序似乎沒有得到想要的結果
如果要得到自己想要的結果,不管是升序還是降序,就需要提供比較函數了。該函數比較兩個值的大小,然后返回一個用于說明這兩個值的相對順序的數字。
比較函數應該具有兩個參數a和b,其返回值如下:
若a小于b,即a-b小于零,則返回一個小于零的值,數組將按照升序排列。
若a等于b,則返回0。
若a大于b,即a-b大于零,則返回一個大于零的值,數組將按照降序排列。
按照數值大小進行排序-升序
arr.sort(function(a,b){
returna-b;
})
按照數值大小進行排序-降序
arr.sort(function(a,b){
returnb-a;
})
按照數組中對象的某一個屬性值進行排序
vararr=[
{name:'zopp',age:0},
{name:'gpp',age:18},
{name:'yjj',age:8}
];
functioncompare(property){
returnfunction(a,b){
varvalue1=a[property];
varvalue2=b[property];
returnvalue1-value2;
}
}
console.log(arr.sort(compare('age')))
上述就是小編為大家分享的sort排序算法的原理是什么了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。