Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

brcontainer

Funções Eval(), Parseint() e Isnan()

Recommended Posts

Achei essa tuto muito boa naum vo pro o site por pega mal...

 

Mas tah ae foi criada por Miguel Alvez

 

Vemos vários exemplos de funções da livraria: eval(), parseInt(), isNaN()...

 

Agora podemos ver vários exemplos de utilização de funções da livraria que proporciona Javascript.

 

Função eval

 

Esta função é muito importante, tanto que existem algumas aplicações de Javascript que não poderiam se realizar se não a utilizamos. A utilização desta função é muito simples, mas pode ser que seja mais complexo entender em que caso utiliza-la porque às vezes é um pouco sutil sua aplicação.

 

Com os conhecimentos atuais não podemos dar um exemplo muito complicado, mas pelo menos podemos ver em funcionamento a função. Vamos utilizá-la em uma sentença um pouco rara e que não serve muito, mas se conseguimos entendê-la,conseguiremos entender também a função eval.

 

var meuTexto = "3 + 5"

eval("document.write(" + meuTexto +")")

 

Primeiro, criamos uma variável com um texto, na seguinte linha utilizamos a função eval e como parâmetro lhe passamos uma instrução javascript para escrever na tela. Se concatenamos os strings que existem dentro dos parênteses da função eval ficaria asim.

 

document.write(3 + 5)

 

A função eval executa a instrução que for passada por parâmetro, portanto executará esta sentença, o que dará como resultado que se escreva um 8 na página web. Primeiro se resolve a soma que há entre parênteses, com o qual obtemos o 8 e logo se executa a instrução de escrever na tela.

 

Função parseInt

 

Esta função recebe um número, escrito como uma cadeia de caracteres, e um número que indica uma base. Na verdade pode receber outros tipos de variáveis, dado que as variáveis não têm tipo em Javascript, mas costuma-se utilizar passando um string para converter a variável de texto em um número.

 

As distintas bases que pode receber a função são 2, 8, 10 e 16. Se não passamos nenhum valor como base a função interpreta que a base é decimal. O valor que devolve a função sempre tem base 10, de modo que se a base não é 10 converte o número a essa base antes de devolvê-lo.

 

Vejamos uma série de chamadas à função parseInt para ver o que devolve e entender um pouco mais a função.

 

document.write (parseInt("34"))

Devolve o número 34

 

document.write (parseInt("101011",2))

Devolve o número 43

 

document.write (parseInt("34",8))

Devolve o número 28

 

document.write (parseInt("3F",16))

Devolve o número 63

 

Esta função se utiliza na prática para um monte de coisas distintas no manejo com números, por exemplo, obter a parte inteira de um decimal.

 

document.write (parseInt("3.38"))

Devolve o número 3

 

Também é muito habitual seu uso para saber se uma variável é numérica, pois se passamos um texto à função que não seja numérico nos devolverá NaN (Not a Number) o que quer dizer que Não é um Número.

 

document.write (parseInt("criarweb.com"))

Devolve o número NaN

 

Este mesmo exemplo é interessante com uma modificação, pois se passamos uma combinação de letras e números, daria o seguinte.

 

document.write (parseInt("16XX3U"))

Devolve o número 16

 

document.write (parseInt("TG45"))

Devolve o número NaN

 

Como se pode ver, a função tenta converter o string em número e senão pode, devolve NaN.

 

Todos estes exemplos, meio desconexos, sobre como trabalha parseInt serão revisados mais adiante em exemplos mais práticos quando tratarmos o trabalho com formulários.

 

Função isNaN

 

Esta função devolve um booleano dependendo se o que se recebe é um número ou não. O único que pode receber é um número ou a expressão NaN. Se recebe um NaN devolve true e se recebe um número devolve false. É uma função muito simples de entender e de utilizar.

 

A função costuma trabalhar em combinação com a função parseInt ou parseFloat, para saber se o que devolvem estas duas funções é um número ou não.

 

meuInteger = parseInt("A3.6")

isNaN(meuInteger)

 

Na primeira linha atribumos a variável meuInteger o resultado de tentar converter a inteiro o texto A3.6. Como este texto não se pode converter a número, a função parseInt devolve NaN. A segunda linha comprova se a variável anterior é NaN e sendo assim devolve um true.

 

meuFloat = parseFloat("4.7")

isNaN(meuFloat)

 

Neste exemplo convertemos um texto a número com decimais. O texto se converte perfeitamente porque corresponde com um número. Ao receber um número a função isNaN devolve um false.

 

 

 

Falow pessoal depois eu procuro outras funções uteis como essas http://forum.imasters.com.br/public/style_emoticons/default/devil.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.