sort() ?方法用于對數(shù)組的元素進(jìn)行排序,并返回?cái)?shù)組。默認(rèn)排序順序是根據(jù)字符串UniCode碼绩聘。因?yàn)榕判蚴前凑兆址甎niCode碼的順序進(jìn)行排序的颇蜡,所以首先應(yīng)該把數(shù)組元素都轉(zhuǎn)化成字符串(如有必要)冒版,以便進(jìn)行比較。
語法:arrayObject.sort(sortby);
參數(shù)sortby ?可選,用來規(guī)定排序的順序,但必須是函數(shù)另患。
例一:按照字母順序排序
例二:還是按照字母進(jìn)行排序
這次排序似乎沒有得到想要的結(jié)果。蛾绎。昆箕。鸦列。。鹏倘。
如果要得到自己想要的結(jié)果薯嗤,不管是升序還是降序,就需要提供比較函數(shù)了纤泵。該函數(shù)比較兩個值的大小骆姐,然后返回一個用于說明這兩個值的相對順序的數(shù)字。
比較函數(shù)應(yīng)該具有兩個參數(shù) a 和 b夕吻,其返回值如下:
若 a 小于 b诲锹,即 a - b 小于零繁仁,則返回一個小于零的值涉馅,數(shù)組將按照升序排列。
若 a 等于 b黄虱,則返回 0稚矿。
若 a 大于 b, 即 a - b 大于零,則返回一個大于零的值捻浦,數(shù)組將按照降序排列晤揣。
例三:升序排列
例四:降序排序
如果想根據(jù)數(shù)組對象中的某個屬性值進(jìn)行排序怎么辦呢?朱灿?昧识?
例五:按照數(shù)組對象中某個屬性值進(jìn)行排序
例六:根據(jù)參數(shù)來確定是升序還是降序