なっく日報

技術やら生活やらのメモ

ES5をES6に効率的に書き換える

何の話題?

ES5で書かれたJavaScriptソースコードをES6に変換する方法の話です(babelの逆)

xto6を使う(完)

github.com

・・・とはならず、改行が変わっちゃったり、やっぱ使えんということも多いかと思います。

そこで正規表現

Vimmerな方

\vのvery magic便利。\=にハマる。

" var → const
%s/var /const /
" function → Arrow function
%s/\vfunction\((.*)\) \{/(\1) => {/
" require → import
%s/\vconst (.+) \= require\((.*)\);/import \1 from \2;/

面倒臭がりな方

perlワンライナー

perl -i -pe 's/var /const /' **/*.js
perl -i -pe 's/function\((.*)\) \{/($1) => {/' **/*.js
perl -i -pe 's/const (.+) = require\((.*)\);/import $1 from $2;/' **/*.js

# ↑zshだけ?bashな方は↓とか
find . -name '*.js' -print0 | xargs -0 perl -i -pe 's/var /const /'