Como comparar valores com menor que

English version: //www.javascripttutorial.net/javascript-comparison-operators/

Para comparar dois valores usamos os operadores de comparação [comparison operators]. Confira abaixo uma tabela que mostra os operadores de comparação do JavaScript.

Um operador de comparação retorna um valor Booleano [Boolean] indicando que a comparação é verdadeira [true] ou falsa [false]. Veja o exemplo abaixo:

O operador de comparação aceita pelo menos dois valores [ou operandos]. Se um dos valores for de um tipo diferente, o JavaScript executará uma conversão com base em regras específicas antes de efetuar a comparação. Vamos abordar cada regra de forma detalhada em tutoriais seguintes.

Comparando Números

Se os operandos [valores a serem comparados] forem números, o JavaScript fará uma comparação numérica. Por Exemplo:

Se os operadores for em números, o Java script faça uma comparação numérica. Por exemplo:

Este exemplo é direto. O valor da variável a é 10 e da variável b é 20.

A expressão a >= b significa a seguinte pergunta: O valor da variável a é maior ou igual que o valor da variável b?. Como resposta o JavaScript retorna false [falso].

E a expressão a == 10 [o valor de da variável a é igual ao número 10?] retorna como resposta true [verdadeiro].

Comparando strings [sequências de caracteres]

Se os operandos [valores] forem strings [sequencias de caracteres], o JavaScript comparará os códigos numéricos de cada caractere da string [um por um].

Como JavaScript compara códigos de caracteres numericamente em sequência, você pode receber um resultado inesperado, por exemplo:

Nesse exemplo, f2 é menor que f1 porque a letra B tem o código de caractere 66 enquanto a letra a tem o código de caractere 97.

Para corrigir isso, você deve primeiro converter as strings em um formato comum, pode ser todas as letras em minúsculas ou maiúsculas e então fazer a comparação como a seguir:

Observe que toLowerCase[] é um método do objeto String que converte a string em letras minúsculas.

Comparando um número com um valor de outro tipo

Um operando [um dos valores a ser comparado] é um número enquanto o outro não é, o JavaScript converte o operando não numérico em um número e executa a comparação numericamente.

Nesse exemplo acima, a string '20' é convertida para 20 e comparada com o número 10.

Outro exemplo:

Nesse exemplo, o JavaScript converte a string '10' [que está do lado direito] em um número 10 e compara o resultado da conversão com o número 10 que está no lado esquerdo, trazendo true como resultado da comparação.

Comparando um Objeto com algo que não é um Objeto

Se um operando [um dos valores a ser comparado com outro] é um Objeto, o JavaScript chama o método valueOf[] desse objeto para pegar um valor a ser comparado. Se o objeto não tiver o método valueOf[], o JavaScript então chama o método toString[] e usa o valor retornado para comparação.

Veja o exemplo a seguir:

Na primeira comparação o objeto apple possui o método valueOf[] que retorna 10, portanto o JavaScript usa o valor 10 para a comparação.

Na segunda comparação o objeto chama primeiro o método valueOf[]. No entanto, o objeto orange não possui o método valueOf[] então o JavaScript chama o método toString[] para obter o valor retornado 20.

Comparando um Booleano com outro valor

Se um operando é um Booleano, o JavaScript converte ele em um número e compara o valor convertido com o outro operando, o true será convertido em 1 e o false será convertido em 0.

As regras acima, também valem para os operadores de igual == e de diferente !=.

Comparando null e undefined

No JavaScript, null é igual a undefined. Isso significa que a expressão a seguir retorna true.

Comparando NaN com outros valores

Se um dos operadores é um NaN a comparação usando o operador de igualdade == sempre vai retornar false.

Mesmo comparando NaN com outro NaN:

O operador de diferente != retorna true ao comparar o NaN com outro valor:

E também:

Estritamente igual [===] e Estritamente diferente [!==]

Além dos operadores de comparação vistos acima, o JavaScript fornece os operadores estritamente igual === e o estritamente diferente !==.

Os operadores estritamente iguais e estritamente diferentes se comportam como o operador igual e diferente [não igual], exceto que eles não convertem o operando antes da comparação.

Na primeira comparação, usamos o operador de igualdade, o JavaScript converte a sequencia em números e realiza a comparação.

Na segunda comparação, usamos o operador de estritamente igual === e o JavaScript não converte a string para fazer a comparação, resultando em false.

Nesse tutorial você aprendeu como usar os operadores de comparação JavaScript para comparar valores.

Veja o índice de todos os tutoriais JavaScript

Confira uma série de outros tutoriais JavaScript que eu escrevi, clicando no link abaixo:

Bài mới nhất

Chủ Đề