Performs logical negation on an expression.
!expression |
Arguments
- expression
-
Any expression.
Remarks
The following table illustrates how the result is determined.
If expression coerces to
|
Then result is
|
---|---|
true |
false |
false |
true |
All unary operators, such as the ! operator, evaluate expressions as follows:
-
If applied to undefined or null expressions, a run-time error is raised.
-
Objects are converted to strings.
-
Strings are converted to numbers if possible. If not, a run-time error is raised.
-
Boolean values are treated as numbers (0 if false, 1 if true).
The operator is applied to the resulting number.
For the ! operator, if expression is nonzero, result is zero. If expression is zero, result is 1.