The following words may be used as keywords in future evolutions of the language, so using them as identifiers should be avoided to allow an easier adoption of those potential future versions:
await class const enum export extends implements import interface let package private protected public static super yield Use of these words as identifiers would produce an error in JavaScript strict mode code.
var package = document.getElementsByName("foo"); // Noncompliant
var someData = { package: true }; // Compliant, as it is not used as an identifier here
var elements = document.getElementsByName("foo"); // Compliant