Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Como faço para reusar o código

Olá como faço para não ter essa repetição horrível. Tentei passar os 3 parâmetros que preciso dentro de uma mesma função, até foi, mas dentro do swith não rolou só me retorna um valor dos 3 e sempre o último parâmetro: Os parêmetros passados são: mesAnt, mesAtu, mesPos.

function strinMesAnt(mesAnt) {

        console.log("Entrei no mes anterior = " + mesAnt);

        switch (mesAnt) {
        case "01": mesAnt = "Janeiro"; break;
        case "02": mesAnt = "Fevereiro"; break;
        case "03": mesAnt = "Março"; break;
        case "04": mesAnt = "Abril"; break;
        case "05": mesAnt = "Maio"; break;
        case "06": mesAnt = "Junho"; break;
        case "07": mesAnt = "Julho"; break;
        case "08": mesAnt = "Agosto"; break;
        case "09": mesAnt = "Setembro"; break;
        case "10": mesAnt = "Outubro"; break;
        case "11": mesAnt = "Novembro"; break;
        case "12": mesAnt = "Dezembro"; break;
        default: break;}

        return mesAnt;
    }

    function strinMesAtu(mesAtu) {

        console.log("Entrei no mes atual = " + mesAtu);

        switch (mesAtu) {
        case "01": mesAtu = "Janeiro"; break;
        case "02": mesAtu = "Fevereiro"; break;
        case "03": mesAtu = "Março"; break;
        case "04": mesAtu = "Abril"; break;
        case "05": mesAtu = "Maio"; break;
        case "06": mesAtu = "Junho"; break;
        case "07": mesAtu = "Julho"; break;
        case "08": mesAtu = "Agosto"; break;
        case "09": mesAtu = "Setembro"; break;
        case "10": mesAtu = "Outubro"; break;
        case "11": mesAtu = "Novembro"; break;
        case "12": mesAtu = "Dezembro"; break;
        default: break;}

        return mesAtu;
    }

    function strinMesPos(mesPos) {

        console.log("Entrei no mes posterior = " + mesPos);

        switch (mesPos) {
        case "01": mesPos = "Janeiro"; break;
        case "02": mesPos = "Fevereiro"; break;
        case "03": mesPos = "Março"; break;
        case "04": mesPos = "Abril"; break;
        case "05": mesPos = "Maio"; break;
        case "06": mesPos = "Junho"; break;
        case "07": mesPos = "Julho"; break;
        case "08": mesPos = "Agosto"; break;
        case "09": mesPos = "Setembro"; break;
        case "10": mesPos = "Outubro"; break;
        case "11": mesPos = "Novembro"; break;
        case "12": mesPos = "Dezembro"; break;
        default: break;}

        return mesPos;
    }
2 respostas
solução!

Você pode escrever uma única função e chamá-la 3x passando as 3 variáveis diferentes que você tem. Exemplo:

function stringMes(mes) {
        switch (mes) {
        case "01": mes = "Janeiro"; break;
        case "02": mes = "Fevereiro"; break;
        case "03": mes = "Março"; break;
        case "04": mes = "Abril"; break;
        case "05": mes = "Maio"; break;
        case "06": mes = "Junho"; break;
        case "07": mes = "Julho"; break;
        case "08": mes = "Agosto"; break;
        case "09": mes = "Setembro"; break;
        case "10": mes = "Outubro"; break;
        case "11": mes = "Novembro"; break;
        case "12": mes = "Dezembro"; break;
        default: break;}

        return mes;
    }

E aí chama:

stringMes(mesAnt);
stringMes(mesPos);
stringMes(mesAtu);

Maravilha Sérgio Lopes, obrigado!