у меня есть два массива с строковыми данными:Сортировка массива с строковыми данными на Javascript
var AA = ["~/80/Blue/1.png","~/80/Blue/2.png","~/80/Black/1.png","~/80/Black/2.png"];
var BB = ["~/81/Blue/1.png","~/81/Blue/2.png","~/81/Black/1.png","~/81/Black/2.png"];
Мне нужно .concat эти массивы и .sort как это:
CC = ["~/80/Blue/1.png","~/81/Blue/1.png","~/80/Blue/2.png","~/81/Blue/2.png","~/80/Black/1.png","~/81/Black/1.png","~/80/Black/2.png","~/81/Black/2.png"];
Критерий сортировки, что Мне нужно иметь пары элементов массива с одним и тем же «цветовым каталогом» и тем же именем файла.
Я попытался это:
var CC = AA.concat(BB);
CC.sort (function(a,b) {
var Mask = /\W\w+\W\d\Wpng/;
var A =[];
var B = [];
var s1 = a.toLowerCase();
var s2 = b.toLowerCase();
for (var i=0; i<s1.length; i++){
A.push(s1[i].match(Mask));
}
for (var i=0; i<s2.length; i++){
B.push(s2[i].match(Mask));
}
for (var i=0; i<A.length; i++){
for (var j=0; j<B.length; j++){
if (A[i] < B[j]) {return -1;};
if (A[i] > B[j]) {return 1;};
else {return 0;}
}
}
Что вы попробовали? Пожалуйста, посетите Справочный центр, чтобы получить совет по заданию вопросов. – prasun
. Пожалуйста, отредактируйте и добавьте в свой вопрос, так, чтобы он был читаемым пользователям – prasun
. Критерии сортировки? – udnisap