Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Sắp xếp phần tử mảng trong JavaScript

JavaScript có hàm sắp xếp mạnh mẽbuilt-in. Mặc định sort sắp xếp theo bảng chữ cái. Ví dụ:

Ví dụ

let arr1 = ["Zebra", "Bear", "Tiger"]; arr1.sort(); console.log(arr1);

Kết quả

[ 'Bear', 'Tiger', 'Zebra' ]

Ví dụ số:

Ví dụ

let arr1 = [1, 8, 31, 21]; arr1.sort(); console.log(arr1);

Kết quả

[ 1, 21, 31, 8 ]

Kết quả không như mong đợi vì sort mặc định theo chuỗi. Để sắp xếp số, cung cấp hàm so sánh:

Ví dụ

let arr1 = [1, 8, 31, 21]; arr1.sort((a, b) => a - b); console.log(arr1);

Kết quả

[ 1, 8, 21, 31 ]

Cũng dùng cho sắp xếp mảng đối tượng theo key:

Ví dụ

let people = [{    name: "Zoe",    age: 35 }, {    name: "Richard",    age: 21 }, {    name: "Agnes",    age: 25 }]; people.sort((a, b) => {    let nameA = a.name.toUpperCase();    let nameB = b.name.toUpperCase();    if (nameA < nameB) return -1;    if (nameA > nameB) return 1;    return 0; }) console.log(people)

Kết quả

[ { name: 'Agnes', age: 25 }, { name: 'Richard', age: 21 }, { name: 'Zoe', age: 35 } ]

sort sắp xếp tại chỗ (in-place). Để giữ nguyên mảng gốc, dùng arr.slice(0).sort().