The Christmas edition is about strict mode in JavaScript. The short story is that you should always use strict mode. The longer version is that strict mode will save your sanity when writing and debugging JavaScript.
The essential properties of strict mode are:
-
Assigning a value to an undeclared global variable throws an error. You must use
let
,const
orvar
to declare a variable before assigning it. -
You cannot assign a new value to a read-only global value like
NaN
orundefined
. -
Functions have to be declared at the top level of a script or function not in a nested block.
-
You cannot have duplicate function parameter names.
-
The
with
statement is not allowed.
There are some other things as well, but those seem to be the most important things to note.