fabiodurgante 0 Report post Posted June 20, 2019 ola quero verificar se string contem no array fiz o seguinte porem nao funciona var respostascertas= ['short', '2', 'nose', 'eyes', 'mouth', 'dividir', 'somar', 'Mais', 'menos']; function verifica(ite) { alert(ite) if(respostascertas.indexOf(ite)) { alert("SIM") } else { alert("NAO") } } [\code] sempre mostra SIM independente dao valor da variavel ite, se variavle ite estiver no array SIM senao NAO mas sempre mostra SIM o que posso fazer ??? Share this post Link to post Share on other sites
Luan Gabriel 0 Report post Posted June 21, 2019 Sei qual é o problema, eu adaptei o codigo porque estava rodando direto do node. O problema é que quando você usa indexOf() ele não faz uma busca dentro do vetor procurando a palavra que voce deu a ele. Mas quando o indexOf NÃO encontra o valor digitado, ele retorna o -1 . Por isso a verificação que você deve fazer é igual a que está abaixo. if (respostascertas.indexOf(ite) == -1) var respostascertas = ['short', '2', 'nose', 'eyes', 'mouth', 'dividir', 'somar', 'Mais', 'menos'] function verifica(ite) { console.log(ite) if (respostascertas.indexOf(ite) == -1) { // Caso o parametro nao seja encontrado no vetor, retorna o valor -1, e se esse valor nao existir no vetor, entao da o alerta NAO console.log("NAO") } else { console.log("SIM") } } verifica('claro') // Dentro do parametro vai o que você deseja buscar no vetor. Share this post Link to post Share on other sites
Éverson da Luz 6 Report post Posted June 21, 2019 Altere o seu if para if(respostascertas.indexOf(ite) != -1) a função indexOf retorna -1 caso não encontra um resultado. Pelo que pesquisei, se você verificar um valor do tipo inteiro no Javascript, ele retorna true para qualquer valor diferente de 0 (ou seja numeros negativos como -1), e retorna false para valores igual a 0. Por isso o resultado -1 está entrando no seu if. Share this post Link to post Share on other sites
fabiodurgante 0 Report post Posted June 23, 2019 isso ai funcionou perfeito valeu agradeco pela ajuda Share this post Link to post Share on other sites