如何从JavaScript中具有序号的值创建有序数组?

假设我们有一系列字符串,其中包含#pathcatenated和image path和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' ]