更新時間:2024-04-21 14:12:35 來源:動力節(jié)點 瀏覽728次
JavaScript 中內(nèi)置了一些常用的排序函數(shù),如下:
Array.prototype.sort(): 是數(shù)組原型對象上的一個函數(shù),用于對數(shù)組進行原地排序,即不生成新的數(shù)組。默認的排序方法是將數(shù)組元素轉(zhuǎn)換成字符串后比較,因此可能會得到意想不到的結(jié)果。可以通過傳遞一個比較函數(shù)來指定自定義的排序規(guī)則。
示例:
const arr = [5, 2, 1, 8, 4, 7, 6, 3];
arr.sort(); // [1, 2, 3, 4, 5, 6, 7, 8]
Array.prototype.reverse(): 是數(shù)組原型對象上的一個函數(shù),用于反轉(zhuǎn)數(shù)組中的元素順序,返回原數(shù)組的引用。
示例:
const arr = [5, 2, 1, 8, 4, 7, 6, 3];
arr.reverse(); // [3, 6, 7, 4, 8, 1, 2, 5]
Array.prototype.concat(): 是數(shù)組原型對象上的一個函數(shù),用于將兩個或多個數(shù)組合并成一個新數(shù)組,不會改變原數(shù)組。
示例:
const arr1 = [1, 2, 3];
const arr2 = [4, 5, 6];
const arr3 = arr1.concat(arr2); // [1, 2, 3, 4, 5, 6]
需要注意的是,concat() 函數(shù)返回的是一個新數(shù)組,原數(shù)組不會發(fā)生改變。
Array.prototype.join(): 是數(shù)組原型對象上的一個函數(shù),用于將數(shù)組中的所有元素轉(zhuǎn)換為一個字符串,每個元素之間可以指定一個分隔符。不會改變原數(shù)組。
示例:
const arr = [1, 2, 3];
const str = arr.join("-"); // "1-2-3"
需要注意的是,join() 函數(shù)返回的是一個新字符串,原數(shù)組不會發(fā)生改變。
除了以上提到的常用函數(shù)之外,還可以使用快速排序、歸并排序、堆排序等算法實現(xiàn)數(shù)組排序。
相關(guān)閱讀