JavaScript
Node.js
ECMAScript

Smoosh, squash, flatten?

TC39ではflattenという関数(ネストされた配列をフラットにする)の名前をsmooshとかsquashにしたほうがいいんじゃないかという議論がされている。ちなみに、TC39はECMAScriptに関する提案を扱う委員会のこと。

flattenの動きはこんな感じ(になる予定?定かではない)

const a = [1, [2, 3, 4], 5];
flatten(a); // -> [1, 2, 3, 4, 5]

なぜflattenではまずいかというと、MooToolsというユーティリティライブラリにflattenという関数がありTC39で提案されている関数と互換性がないため。

個人的にはflattenになってほしい。多くのライブラリがflattenという名前を採用している気がするから。

参考