let sortedCars1 = cars.sort((a, b) => new Date(...a.initialRegistration.split('/').reverse()) - new Date(...b.initialRegistration.split('/').reverse()));
let cars = [{
"id": 20,
"mileage": 41300,
"make": "Golf",
initialRegistration: "09/02/2010"
}, {
"id": 21,
"mileage": 51300,
"make": "Passat",
initialRegistration: "06/04/2012"
}, {
"id": 22,
"mileage": 61300,
"make": "Audi",
initialRegistration: "02/01/2018"
}, {
"id": 23,
"mileage": 20300,
"make": "Touran",
initialRegistration: "17/09/2013"
}, {
"id": 24,
"mileage": 10300,
"make": "Polo",
initialRegistration: "26/07/2014"
}];
let sortedCars1 = cars.sort((a, b) => new Date(...a.initialRegistration.split('/').reverse()) - new Date(...b.initialRegistration.split('/').reverse()));
console.log(sortedCars1);
或通过String#localeCompare
将日期字符串反转后使用字符串比较。
let sortedCars1 = cars.sort((a, b) =>
a.initialRegistration.split('/').reverse().join().localeCompare(b.initialRegistration.split('/').reverse().join()));
let cars = [{
"id": 20,
"mileage": 41300,
"make": "Golf",
initialRegistration: "09/02/2010"
}, {
"id": 21,
"mileage": 51300,
"make": "Passat",
initialRegistration: "06/04/2012"
}, {
"id": 22,
"mileage": 61300,
"make": "Audi",
initialRegistration: "02/01/2018"
}, {
"id": 23,
"mileage": 20300,
"make": "Touran",
initialRegistration: "17/09/2013"
}, {
"id": 24,
"mileage": 10300,
"make": "Polo",
initialRegistration: "26/07/2014"
}];
let sortedCars1 = cars.sort((a, b) =>
a.initialRegistration.split('/').reverse().join().localeCompare(b.initialRegistration.split('/').reverse().join()));
console.log(sortedCars1);