🐊Putout plugin adds ability to extract sequence expressions
npm install @putout/plugin-extract-sequence-expressions[NPMIMGURL]: https://img.shields.io/npm/v/@putout/plugin-extract-sequence-expressions.svg?style=flat&longCache=true
[NPMURL]: https://npmjs.org/package/@putout/plugin-extract-sequence-expressions"npm"
> The comma operator (,) evaluates each of its operands (from left to right) and returns the value of the last operand. This lets you create a compound expression in which multiple expressions are evaluated, with the compound expression's final value being the value of the rightmost of its member expressions.
>
> (c) MDN
🐊Putout plugin adds ability to extract sequence expressions. Check out in 🐊Putout Editor.
☝️Remember, when you writing a transform you can skip all parts related to extracting sequence expressions and just reuse current plugin it will make your code simpler and less error prone.
```
npm i @putout/plugin-extract-sequence-expressions -D
`json`
{
"rules": {
"extract-sequence-expressions": "on"
}
}
`js
(module.exports.x = 1, module.exports.y = 2);
fn((a, b));
(fn(a), 'hello');
(fn(a), b = 3);
(fn(a), fn(b));
if ((a, b, c)) {}
`
`js
module.exports.x = 1;
module.exports.y = 2;
fn(a, b);
fn(a, 'hello');
fn(a);
b = 3;
fn(a);
fn(b);
a;
b;
if (c) {}
`
Linter | Rule | Fix
--------|-------|------------|
🐊 Putout| extract-sequence-expressions| ✅
⏣ ESLint | no-sequences` | ❌
MIT