数组排序面试题,请写出你的答案

119 阅读1分钟
let key = ['type', 'id', 'name']
let arr = [    
{ id: '3', name: 'cc', type:'bar'},    
{ id: '1', name: 'bb', type:'bar' },    
{ id: '2', name: 'aa', type:'line' },    
{ id: '7', name: 'bb', type:'bar' },    
{ id: '6', name: 'aa', type:'line' },    
{ id: '5', name: 'cc', type:'line' },    
{ id: '8', name: 'dd', type:'bar' }
]

要求的结果是按type,name,id 排序,得出结果如下:

[  
{ id: '1', name: 'bb', type:'bar' },  
{ id: '7', name: 'bb', type:'bar' },  
{ id: '3', name: 'cc', type:'bar' },
{ id: '8', name: 'dd', type:'bar' },  
{ id: '2', name: 'aa', type:'line' },  
{ id: '6', name: 'aa', type:'line' },  
{ id: '5', name: 'cc', type:'line' }
]

请写出你的实现代码