JavaScriptでのセミコロン

A plea to use semicolons when writing JavaScriptという記事を読んでいた。僕はもちろん書く派だ。なのでこの記事には大賛成……と思いきや、こういった言語的な側面からセミコロンを使うべきだという書き方には賛成できない。これではそのまま逆にすれば使わない理由になりうる。

僕がセミコロンを書くことにしているのは、どこでセミコロンを省略できるのかについて広範で確実な知識を持っていないからだ。むしろ人々がなぜそんなに自信満々に省略できるのかが理解できない。もちろんJavaScript界のとても優れた開発者たちの少なくない何人かがセミコロンを書かない派なのは知っているが、それを真似したところで優れた開発者になれるわけでもない。彼らは優れた開発者でJavaScriptのことを良く知っているからこそセミコロンを省略することができるのだ。

このことはセミコロンを書かない派のJavaScriptに対する習熟度にも表れているように感じる。つまりセミコロンを書かない派は、とても高い習熟度と低い習熟度に集中しており、中間層にはほとんど見られない、という意味だ。このことは中間層の人間が忌避するだけの理由があるということなのだろう。きっとセミコロンがむやみに省略されているコードで痛い目にあったことがあるのかもしれない(僕のように)。

コーディング規約で強制される場合を除き、僕はきっとこれからもセミコロンを省略することはないだろう。