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

Excluir carácter de string

Ola, alguém poderia me ajudar? Estou tentando remover um carácter especificado através de um parâmetro na seguinte função

Function removeLetter(word, letter)

Tentei através de um split e comparação entre char

Function removeLetter(word, letter){
     var aux = word.split(" "); //(ou (",")
     for(var i = 0; i < aux.length; i++){
            if(aux[i] == letter){
                aux.splice(i);
            }
}

Era mais ou menos esse o código, já tentei com replace também

3 respostas
solução!

Pedro, boa tarde!

Você pode usar função filter para remover a letra, seria uma implementação assim: nome);

function removeLetter(word, letter){
    letras = word.split('');
    wordWithoutLetter = letras.filter(letraAtual => letraAtual !== letter);
    console.log(wordWithoutLetter);
}

Espero ter ajudado bons estudos!

Felipe Moreno agradeço a ajuda, funcionou, mas será que poderia me explicar melhor essa linha?

wordWithoutLetter = letras.filter(letraAtual => letraAtual !== letter);

Não entendi bem os parâmetros

Claro!

Primeiro nós estamos definindo uma variavel com o nom wordWithoutLetter. Ao atribuir um valor nós estamos falando que do array com o nome letras nos vamos filtrar (filter()). O filter recebe uma função como parâmetro, nesse nesse caso eu usei uma arrow function mas você poderia usar por uma função da maneira que acha mais adequada como

letras.filter(function(letra) {
});

Perceba que ele recebe como parâmetro cada elemento dessa array. A partir daí eu verifico se aquela letra do loop atual é diferente da letra escolhida. Caso seja, ela é inserida no novo array wordWithoutLetter caso seja igual ela não retorna

letras.filter(function(letra) {
    return letraAtual !== letter;
});

Espero ter ajudado e bons estudos!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software