detect-es - ESnextのコード有無をチェック
旧来のJavaScriptは変数のスコープに問題があったり、クラスをサポートしていないなど大きなWebアプリケーションを作るには不向きな言語でした。しかし現在はPromiseやクラス、Proxyなど多彩な機能が追加されています。 これらはESnextと呼ばれる仕様で、すべてのWebブラウザで間違いなく使える訳ではありません。そうしたESnextのコードが存在するかどうかチェックできるのがdetect-esです。
detect-esの使い方
インストールはYarnまたはnpmを使って行います。
yarn global add detect-es
後はファイルを指定して detect-es コマンドを実行するだけです。
$ detect-es client/www/js/app.js
CONST client/www/js/app.js:1:0
CONST client/www/js/app.js:2:0
CONST client/www/js/app.js:3:0
CONST client/www/js/app.js:4:0
ARROW_FUNCTION client/www/js/app.js:6:46
CONST client/www/js/app.js:7:2
ARROW_FUNCTION client/www/js/app.js:7:22
API You may need a polyfill for Promise client/www/js/app.js:8:15
detect-esが対応しているのはconst/let、テンプレート、クラス、アローファンクション、Async Function、モジュール、インポート、分割代入、ジェネレータ、for of 文となっています。これらは使ってはいけない訳ではありませんが、古いブラウザでは動かない可能性があるので利用の際にはサポートブラウザを確認する必要があるでしょう。
detect-esはnode/JavaScript製のオープンソース・ソフトウェア(MIT License)です。