2012-07-18 35 views
23

Duplicar posible:
return !1 in javascript¿Qué significa! 1 y! 0 en Javascript?

En un archivo JavaScript tuve que leer hoy en día, hubo una línea en la que una variable se declara como un factorial, como esto:

var myVariable = !1; 

y luego se usó algo similar como parámetro en una función como esta:

return variable.myFunction(!0); 

¿Alguien puede explicarme qué significa el signo de exclamación en este contexto y, finalmente, por qué esto generalmente se utiliza para (beneficios)?

¡Gracias de antemano!

+5

No es un factorial, es un operador booleano [negation] (http://en.wikipedia.org/wiki/Negation). Convierte 'true' en' false', y viceversa. ¿Probablemente convierte cualquier otra cosa que no sea cero en cero? –

+11

Es un código horrible. ¿Lanza un ['ViolentPsychopathKnowsWhereYouLiveException'] (http://www.codinghorror.com/blog/2008/06/coding-for-violent-psychopaths.html)? –

+0

Me reí incontrolablemente al ver el título de esta pregunta. Tuve que hacer clic. SMH a quien codifique así. – Marlon

Respuesta

49

The! es el operador booleano NOT.

NO (!): Alterna una declaración de verdadero a falso o de falso a verdadero.

!0 = true 
!1 = false 

This es una brillante introducción a operadores booleanos y su uso en javascript.

+0

¡Muchas gracias por su respuesta rápida! Comprobaré esta pregunta como sea posible cuando pueda (en 10 minutos). –

+1

Buena respuesta, cuando no se conoce el resultado de una variable siempre se puede intentar 'alert (! 1)', esto mostrará una ventana emergente con la palabra false –

+1

o console.log (variable), por lo que no se t tiene información [object] –

Cuestiones relacionadas