A script element must not
contain an occurrence of the character sequence
"<!--" without a matching later occurrence
of the character sequence "-->".

A
script
element with a
src attribute must contain only:

lines that consist solely of a newline, optionally
preceded by one or more space (U+0020) characters or tab
(U+0009) characters

single-line comments, which are lines
beginning with the character sequence "//",
optionally preceded by one more more
space (U+0020) characters or tab (U+0009) characters,
followed by any
number of characters that are not a newline, and ending with
a newline

multi-lines comments, which begin with the character
sequence
"/*",
optionally preceded by one more more space (U+0020)
characters or tab (U+0009) characters, and that end with
the character sequence
"*/"

Element script with attribute language whose value is “JavaScript”
must not have attribute type whose value is not
“text/javascript”.

Element script must not have attribute charset unless attribute src is
also specified.

Element script must not have attribute defer unless attribute src is
also specified.

Element script must not have attribute async unless attribute src is
also specified.

The language attribute on the script element is obsolete.
Use the type attribute instead.