rafaelgiori Postado Julho 18, 2014 Denunciar Share Postado Julho 18, 2014 Bom galera, estou com uma duvida no seguinte problema :" Aplicação que receba um texto qualquer e mostre este texto sem as vogais. " Sou novo com essa linguagem e não sei o porque não funciona, gostaria que pudessem citar o meu erro. Agradeço desde já. <html lang="PT-BR"> <head> <meta charset="UTF-8"> <title> Remover vogais </title> <script> function remover() { str=(document.remove.string.value); tam=str.length; for(i=0;i<tam;i++) { if((str.charAt(i)=="a") || (str.charAt(i)=="e") || (str.charAt(i)=="i") || (str.charAt(i)=="o") || (str.charAt(i)=="u")) { str.charAt(i)=""; } } document.remove.resultado.value=str; } </script> </head> <body> <form name="remove"> Insira uma string: <input type="text" name="string" value="" size="35"> <br><br> <input type="button" value="Remover vogais" onClick="remover()"> <br><br> String sem vogais: <input type="text" name="resultado" value="" size="35"> </body> </html> Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 fiote Postado Julho 23, 2014 Denunciar Share Postado Julho 23, 2014 Rafaelgiori, Já que você está começando em JS (parabéns pela decisão!), aqui vão algumas dicas: 1. Não acesse elementos de uma página usando nomedaform.nomedoinput. Use o id do elemento ;) 2. Não se esqueça de fechar suas tags. A form estava aberta, por exemplo xD Respondendo a sua questão, o problema está na hora que você tentou apagar a vogal. Quando você escreve str.charAt(i), temos a seguinte situação: str é um objeto da classe STRING. charAt é um método desse objeto. Métodos são como funções, só que 'agarradas' a um objeto. O charAt é um método que, como você percebeu, recebe como parâmetro um número e retorna o caracter desse OBJETO que está naquela posição. Se str tem o conteúdo "rafael", str.charAt(3) vai retornar "a" (já que como você também deve saber, o índice começa no zero). Depois de se certificar que aquela posição é uma vogal, você tentou "apagá-la", usando str.charAt(i) = ""... só que isso não funciona. charAt é um método. Não dá pra você 'substituí-lo" por "" (pelo menos não assim, e com certeza não é o que você está tentando fazer aqui). Além disso, as strings no javascript são imutáveis. Você não consegue mudar o conteúdo de uma string (você pode fazer uma variável receber OUTRA string, mas não mudar pedaços da string). Uma solução, por exemplo então, é criar outra string =] Eu alterei um pouquinho seu código. Dá uma olhada se você entendeu o que eu fiz ;) http://jsfiddle.net/pTdh4/1/ Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
rafaelgiori
Bom galera, estou com uma duvida no seguinte problema :
" Aplicação que receba um texto qualquer e mostre este texto sem as vogais. "
Sou novo com essa linguagem e não sei o porque não funciona, gostaria que pudessem citar o meu erro.
Agradeço desde já.
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.