11.4.9 Logical NOT Operator !

2010-05-17

UnaryExpression : ! UnaryExpression

Code: (Meta Ecma)
function (! UnaryExpression) {
var expr = evaluate(UnaryExpression);
var oldValue = ToBoolean(GetValue(expr));
if (oldValue) return false;
return true;
}


A double not (!!value), sometimes referred to as a double bang, casts any value to Boolean and is an alternative to Boolean(value). It always returns true or false.