no-with
Disallow with
statements
✅ Recommended
Using the recommended
config from @eslint/js
in a configuration file
enables this rule
The with
statement is potentially problematic because it adds members of an object to the current scope, making it impossible to tell what a variable inside the block actually refers to.
Rule Details
This rule disallows with
statements.
If ESLint parses code in strict mode, the parser (instead of this rule) reports the error.
Examples of incorrect code for this rule:
Open in Playground
/*eslint no-with: "error"*/
Examples of correct code for this rule:
Open in Playground
/*eslint no-with: "error"*/
const r = ({x, y}) => Math.sqrt(x * x + y * y);
When Not To Use It
If you intentionally use with
statements then you can disable this rule.
Version
This rule was introduced in ESLint v0.0.2.