如何在 JavaScript 中从带有顺序号的值创建有序数组?
假设,我们有一系列字符串,其中包含图像路径和顺序 # 连接在一起。它们如下所示 -
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' ]
广告