如何从JavaScript中具有序号的值创建有序数组?
假设我们有一系列字符串,其中包含#pathcatenated和imagepath和order。他们看起来像这样-
const images = [ 'photo1.jpg,0', 'photo2.jpg,2', 'photo3.jpg,1' ];
因此,正确的顺序应为-photo1,photo3,photo2。我们需要做的是将其处理为仅包含路径值的正确排序的数组。因此,最终我们需要-
const orderedImages = [ 'photo1.jpg', 'photo3.jpg', 'photo2.jpg' ]
让我们编写代码以按照正确的顺序对此图像数组进行排序-
示例
const images = [
'photo1.jpg,0',
'photo2.jpg,2',
'photo3.jpg,1'
];
const sorter = (a, b) => {
return parseInt(a.split(",")[1]) - parseInt(b.split(",")[1]);
};
const sortArray = arr => {
return arr
.slice()
.sort(sorter)
.map(el => {
return el.split(",")[0];
});
};
console.log(sortArray(images));输出结果
控制台中的输出将为-
[ 'photo1.jpg', 'photo3.jpg', 'photo2.jpg' ]