Disallow assignment to native objects or read-only global variables (no-global-assign) #596

Closed
feross opened this Issue Aug 19, 2016 · 0 comments

Projects

None yet

1 participant

@feross
Owner
feross commented Aug 19, 2016

JavaScript environments contain a number of built-in global variables, such as window in browsers and process in Node.js. In almost all cases, you don't want to assign a value to these global variables as doing so could result in losing access to important functionality. For example, you probably don't want to do this in browser code:

window = {};

While examples such as window are obvious, there are often hundreds of built-in global objects provided by JavaScript environments. It can be hard to know if you're assigning to a global variable or not.

Rule Details

This rule disallows modifications to read-only global variables.

Examples of incorrect code for this rule:

/*eslint no-global-assign: "error"*/

Object = null
undefined = 1

http://eslint.org/docs/rules/no-global-assign

Likely to be uncontroversial. No repos fail. Will merge into standard v8 beta.

@feross feross added this to the standard v8 milestone Aug 19, 2016
@feross feross added a commit to feross/eslint-config-standard that closed this issue Aug 19, 2016
@feross Disallow assignment to native objects or read-only global variables (…
…no-global-assign)

Fixes: feross/standard#596
a34f0f9
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment