Scala.jsで各種コードの変換結果を見てみる

どんな形で変換されるのかが知りたいケースがあったので調べた。

(主にjsのフレームワークのサンプルをScala.jsで書くとどうなるか等の用途)

変換後にはオブジェクト宣言部とかオーバーヘッド的なものが沢山生成されるが、今回の描きたい所ではないので省いてある。

valのメンバ変数がどのように変換されるか

defがどのように変換されるか

overloadがどのように変換されるか

scala.js.Arrayの操作がどのように変換されるか

ifの最後の評価結果の代入がどのように変換されるか

パターンマッチがどのように変換されるか

最初見た時からわかってたことではあるが、人間が読むコードではないなという感想。