! in strict mode code example
Example 1: What is strict mode in Java Script ?
Strict mode changes previously accepted "bad syntax" into real errors.
As an example, in normal JavaScript, mistyping a variable name creates a
new global variable. In strict mode, this will throw an error, making it
impossible to accidentally create a global variable.
In normal JavaScript, a developer will not receive any error feedback assigning
values to non-writable properties.
In strict mode, any assignment to a non-writable property, a getter-only
property, a non-existing property, a non-existing variable, or a non-existing
object, will throw an error.
Strict mode makes it easier to write "secure" JavaScript.
Example 2: strict mode
Strict mode makes several changes to normal JavaScript semantics:
-Eliminates some JavaScript silent errors by changing them to throw errors.
-Fixes mistakes that make it difficult for JavaScript engines to perform
optimizations: strict mode code can sometimes be made to run faster than
identical code that's not strict mode.
-Prohibits some syntax likely to be defined in future versions of ECMAScript.