Я должен объединить два массива и отсортировать по созданному значению на основе сравнения.Я не хочу использовать какие-либо встроенные функции js, такие как sort.Я пытался использовать цикл while, но не смог найти точное решение.Вот мой пример кода:
function merge(a, b, n, m)
{
res = [];
i = 0; j = 0; k = 0;
while(i < n && j < m) {
if(a[i]['created'] < b[j]['created']) {
res.push(a[i]);
i++;
} else {
res.push(b[j]);
j++;
}
}
while(i < n) {
res.push(a[i]);
i++;
}
while(j < m) {
res.push(b[j]);
j++;
}
return res;
}
a = [{'title':'title1', 'created':'18'},{'title':'title2', 'created':'16'},{'title':'title3', 'created':'20'}];
b = [{'title':'title4','created':'17'},{'title':'title5','created':'19'}];
n = a.length;
m = b.length;
var endResult = merge(a, b, n, m);
console.log(endResult);
Мой ожидаемый результат должен быть следующим:
[{'title':'title2', 'created':'16'},{'title':'title4','created':'17'},{'title':'title1', 'created':'18'},{'title':'title5','created':'19'},{'title':'title3', 'created':'20'}];
Пожалуйста, дайте мне знать, что я пропустил здесь.
Примечание: я не хочу использовать встроенную функцию Javascript, такую как sort ().Я должен отсортировать значения на основе конкретной бизнес-логики, которую я реализую после выяснения базовой сортировки.