$ cnpm install @putout/plugin-remove-useless-new
????Putout plugin adds ability to remove useless operator new. Which has no sense for BigInt, Boolean, String, Number, Object, RegExp, Error:
Thus the function call
Error(…)is equivalent to the object creation expressionnew Error(…)with the same arguments.(c) https://262.ecma-international.org/12.0/#sec-error-constructor
And Symbol cannot be used with new, as it is primitive.
Part of @putout/plugin-new.
npm i @putout/plugin-remove-useless-new
{
"rules": {
"remove-useless-new": "on"
}
}
new Error('Something whent wrong');
new new Boolean();
Error('Something whent wrong');
Boolean();
| Linter | Rule | Fix |
|---|---|---|
| ???? Putout | remove-useless-new |
✅ |
| ???? ESLint | no-new-wrappers |
❌ |
| ⠀ | no-new-object |
❌ |
| ⠀ | no-array-constructor |
❌ |
| ⠀ | no-new-symbol |
❌ |
MIT
Copyright 2013 - present © cnpmjs.org | Home |