noMisrefactoredShorthandAssign
Diagnostic Category: lint/suspicious/noMisrefactoredShorthandAssign
Since: v1.3.0
Sources:
- Same as: 
misrefactored_assign_op 
Description
Section titled “Description”Disallow shorthand assign when variable appears on both sides.
This rule helps to avoid potential bugs related to incorrect assignments or unintended side effects that may occur during refactoring.
Examples
Section titled “Examples”Invalid
Section titled “Invalid”a += a + bcode-block.js:1:1 lint/suspicious/noMisrefactoredShorthandAssign  FIXABLE  ━━━━━━━━━━━━━━━━━━━━━━━━━
  ✖ Variable appears on both sides of an assignment operation.
  
  > 1 │ a += a + b
      │ ^^^^^^^^^^
    2 │ 
  
  ℹ This assignment might be the result of a wrong refactoring.
  
  ℹ Unsafe fix: Use a += b instead.
  
    1 │ a·+=·a·+·b
      │      ---- 
a -= a - bcode-block.js:1:1 lint/suspicious/noMisrefactoredShorthandAssign  FIXABLE  ━━━━━━━━━━━━━━━━━━━━━━━━━
  ✖ Variable appears on both sides of an assignment operation.
  
  > 1 │ a -= a - b
      │ ^^^^^^^^^^
    2 │ 
  
  ℹ This assignment might be the result of a wrong refactoring.
  
  ℹ Unsafe fix: Use a -= b instead.
  
    1 │ a·-=·a·-·b
      │      ---- 
a *= a * bcode-block.js:1:1 lint/suspicious/noMisrefactoredShorthandAssign  FIXABLE  ━━━━━━━━━━━━━━━━━━━━━━━━━
  ✖ Variable appears on both sides of an assignment operation.
  
  > 1 │ a *= a * b
      │ ^^^^^^^^^^
    2 │ 
  
  ℹ This assignment might be the result of a wrong refactoring.
  
  ℹ Unsafe fix: Use a *= b instead.
  
    1 │ a·*=·a·*·b
      │      ---- 
a += ba = a + ba = a - bHow to configure
Section titled “How to configure”{  "linter": {    "rules": {      "suspicious": {        "noMisrefactoredShorthandAssign": "error"      }    }  }}