noUnsafeNegation
Diagnostic Category: lint/suspicious/noUnsafeNegation
Since: v1.0.0
Sources:
- Same as: 
no-unsafe-negation 
Description
Section titled DescriptionDisallow using unsafe negation.
Examples
Section titled ExamplesInvalid
Section titled Invalid!1 in [1,2];code-block.js:1:1 lint/suspicious/noUnsafeNegation  FIXABLE  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  ✖ The negation operator is used unsafely on the left side of this binary expression.
  
  > 1 │ !1 in [1,2];
      │ ^^^^^^^^^^^
    2 │ 
  
  ℹ Unsafe fix: Wrap the expression with a parenthesis
  
    1 │ !(1·in·[1,2]);
      │  +          + 
/**test*/!/** test*/1 instanceof [1,2];code-block.js:1:10 lint/suspicious/noUnsafeNegation  FIXABLE  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  ✖ The negation operator is used unsafely on the left side of this binary expression.
  
  > 1 │ /**test*/!/** test*/1 instanceof [1,2];
      │          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    2 │ 
  
  ℹ Unsafe fix: Wrap the expression with a parenthesis
  
    1 │ /**test*/!/**·test*/(1·instanceof·[1,2]);
      │                     +                  + 
Valid
Section titled Valid-1 in [1,2];~1 in [1,2];typeof 1 in [1,2];void 1 in [1,2];delete 1 in [1,2];+1 instanceof [1,2];How to configure
Section titled How to configure{  "linter": {    "rules": {      "suspicious": {        "noUnsafeNegation": "error"      }    }  }}