ご挨拶

どうもご無沙汰しています。
先日初めてメンティさんと契約する運びとなりました。
MENTAを通してというか、こういうプラットフォームを通じて受注したのは初めてなので何かと刺激を受けています。

では、そのさん

今日はJavascriptのステートメントの終了を表すセミコロンの話です。
まずこの話をするにあたってですが、
先日、職場の若手エンジニアさんのNode.jsで書かれたコードをレビューしているときに末尾のセミコロンがついていないことに気づきました。

おやおや、お漏らしさんかな? と思っていたのですが、
よくよく見るとドバドバに漏れていたので、これはなんだか怖いなぁ…おかしいなぁと思って調べたら
どうも文末にセミコロンを使わないと記法があるそう。
(※結果的には意識したわけでなくコピペでしたが。)

今はまだ悪魔的、記法

セミコロンの省略はJavaScript Standard Styleと呼ばれる記法の中の一つのルールとして運用されているようで、JavaScript Standard Style自体はnpm、GitHub、Elastic、Express、Electronなどで使用されているそうです。

Javascriptの構文的にはセミコロンは必須ですが、
Javascriptには自動セミコロン挿入(Automatic Semilocon Insertion)という機能があるので省略して書いちゃえ、そのほうが美しいだろう!It's a Beautiful!!
ってことらしいです。

やー、カルチャーショックです。
ミニファイする時どうすんだ!と思ったけど、
それはミニファイする側の問題か。なんて勝手に納得。

実際に書いてみる

// どうしようもなく意味のない処理
let ret = function () {
  let ary = []
  ary.push(1)
  ary.push(2)
  for (let obj of ary) {
    console.log(obj)
  }

  return true
}()

console.log(ret)

あれ?うーん、実際に書いてみて見慣れとどっちでもよかったりするなぁ。

上述したように結構メジャーどころが使用しているので既に大勢に流されてしまいそうですが、まだ自分は文末にセミコロンがないとソワソワする前時代脳なので、しばらくの間はあったほうがよいかなとか思ってます。

兎にも角にも、混ざるのだけは嫌だな!