Tôi đã tự hỏi làm thế nào tôi có thể sắp xếp một mảng theo thứ tự tùy chỉnh, chứ không phải theo thứ tự bảng chữ cái. Hãy tưởng tượng bạn có mảng/đối tượng này:Sắp xếp theo thứ tự tùy chỉnh
var somethingToSort = [{
type: "fruit",
name: "banana"
}, {
type: "candy",
name: "twix"
}, {
type: "vegetable",
name: "broccoli"
}, {
type: "vegetable",
name: "carrot"
}, {
type: "fruit",
name: "strawberry"
}, {
type: "candy",
name: "kitkat"
}, {
type: "fruit",
name: "apple"
}];
Ở đây, chúng tôi có 3 loại khác nhau: trái cây, rau và kẹo. Bây giờ tôi muốn sắp xếp mảng này, và chắc chắn rằng tất cả các loại trái cây là đầu tiên, kẹo đến sau khi trái cây, và rau quả là cuối cùng. Mỗi loại cần các mục của chúng được sắp xếp theo thứ tự bảng chữ cái. Chúng tôi sẽ sử dụng một chức năng như sortArrayOnOrder (["fruit","candy","vegetable"], "name");
Vì vậy, về cơ bản, bạn sẽ kết thúc với mảng này sau khi phân loại:
var somethingToSort = [{
type: "fruit",
name: "apple"
}, {
type: "fruit",
name: "banana"
}, {
type: "fruit",
name: "strawberry"
}, {
type: "candy",
name: "kitkat"
}, {
type: "candy",
name: "twix"
}, {
type: "vegetable",
name: "broccoli"
}, {
type: "vegetable",
name: "carrot"
}];
Bất cứ một ý tưởng làm thế nào để tạo ra một kịch bản cho việc này?
Xem thêm nhiều người khác "[làm thế nào để sắp xếp] (http://www.google.de/search?q=stackoverflow+javascript+sort+array+ của + đối tượng) "câu hỏi – Bergi