javascript.lang.correctness.useless-assign.useless-assignment

Author
4,564
Download Count*
License
$X
is assigned twice; the first assignment is useless
Run Locally
Run in CI
Defintion
rules:
- id: useless-assignment
patterns:
- pattern: |
$X = $Y;
$X = $Z;
- pattern-not: |
$X = $Y;
$X = <... $X ...>;
message: "`$X` is assigned twice; the first assignment is useless"
languages:
- javascript
- typescript
severity: WARNING
metadata:
category: correctness
technology:
- javascript
license: Commons Clause License Condition v1.0[LGPL-2.1-only]
Examples
useless-assign.js
// ruleid:useless-assignment
var x1 = 1;
x1 = 2;
// ruleid:useless-assignment
let x2 = 1;
x2 = 2;
// ruleid:useless-assignment
x3 = 1;
x3 = 2;
// ok:useless-assignment
x4 = {value1: 42};
x4 = {x4, value2: 43};
// ok:useless-assignment
x5 = {value1: 42};
x5 = {...x5, value2: 43};
// ok:useless-assignment
y = [1, 2];
y = y.map(function(e) { return e * 2; });
// ok:useless-assignment
z = [1, 2];
z = z.map(e => e * 2);
// ok:useless-assignment
a = "Hi ";
a += "Mom";
// ok:useless-assignment
b = i;
b = f(1, b);
// ok:useless-assignment
c = j;
c = f(1, g(c));
Short Link: https://sg.run/0Q9w