fiz de duas maneiras, uma com mais whiles, outra com menos 
function juntaListas(lista1, lista2) {
    let lista_principal = [];
    let posicaoAtualLista_1 = 0;
    let posicaoAtualLista_2 = 0;
    let tamanho_lista1 = lista1.length;
    let tamanho_lista2 = lista2.length;
    while(posicaoAtualLista_1 < tamanho_lista1 || posicaoAtualLista_2 < tamanho_lista2){
        let item_lista1 = lista1[posicaoAtualLista_1]
        let item_lista2 = lista2[posicaoAtualLista_2]
        if (posicaoAtualLista_1 < tamanho_lista1 && posicaoAtualLista_2 < tamanho_lista2 && item_lista1.preco < item_lista2.preco){
            lista_principal.push(item_lista1)
            posicaoAtualLista_1++
        } else if(posicaoAtualLista_2 < tamanho_lista2 && posicaoAtualLista_1 < tamanho_lista1 && item_lista1.preco > item_lista2.preco){
            lista_principal.push(item_lista2)
            posicaoAtualLista_2++
        }
        if (posicaoAtualLista_2 < tamanho_lista2 && posicaoAtualLista_1 === tamanho_lista1){
            lista_principal.push(item_lista2)
            posicaoAtualLista_2++
        } else if(posicaoAtualLista_1 < tamanho_lista1 && posicaoAtualLista_2 === tamanho_lista2){
            lista_principal.push(item_lista1)
            posicaoAtualLista_1++
        }
    }
    return lista_principal;
}
function juntaListas(lista1, lista2) {
    let lista_principal = [];
    let posicaoAtualLista_1 = 0;
    let posicaoAtualLista_2 = 0;
    let tamanho_lista1 = lista1.length;
    let tamanho_lista2 = lista2.length;
    while(posicaoAtualLista_1 < tamanho_lista1 && posicaoAtualLista_2 < tamanho_lista2){
        let item_lista1 = lista1[posicaoAtualLista_1]
        let item_lista2 = lista2[posicaoAtualLista_2]
        if (item_lista1.preco < item_lista2.preco){
            lista_principal.push(item_lista1)
            posicaoAtualLista_1++
        }else{
            lista_principal.push(item_lista2)
            posicaoAtualLista_2++
        }
    }
    let item_lista1 = lista1[posicaoAtualLista_1]
    let item_lista2 = lista2[posicaoAtualLista_2]
    while (posicaoAtualLista_1 < tamanho_lista1){
        lista_principal.push(item_lista1)
        posicaoAtualLista_1++
    }
    while (posicaoAtualLista_2 < tamanho_lista2){
        lista_principal.push(item_lista2)
        posicaoAtualLista_2++
    }
    return lista_principal;
}