function convertChineseToArabic(str) {
str = str.replace("诊室","");
const nums = {
零: 0,
一: 1,
二: 2,
两: 2,
三: 3,
四: 4,
五: 5,
六: 6,
七: 7,
八: 8,
九: 9
};
let result = str.replace(/[零一二两三四五六七八九]/g, (match) => {
return nums[match];
});
if(result.indexOf('十') != -1){
if(result.length = 1){
result = result.replace('十','10');
}else if(result.length = 2){
result = result.replace('十','1');
}else{
result = result.replace('十','');
}
}
return parseInt(result, 10);
}
function sortChineseNumbers(chineseNumbers) {
return chineseNumbers.sort((a, b) => {
return convertChineseToArabic(a.room_NAME) - convertChineseToArabic(b.room_NAME);
});
}
const chineseNumbers = [
{room_ID:"1",room_NAME:"三诊室"},
{room_ID:"2",room_NAME:"五诊室"},
{room_ID:"2",room_NAME:"二诊室"},
{room_ID:"2",room_NAME:"八诊室"},
{room_ID:"2",room_NAME:"一诊室"},
{room_ID:"2",room_NAME:"十三诊室"},
{room_ID:"2",room_NAME:"十二诊室"},
{room_ID:"2",room_NAME:"二十五诊室"},
{room_ID:"2",room_NAME:"二十诊室"}
];
chineseNumbers = sortChineseNumbers(chineseNumbers);
console.log(chineseNumbers);