投稿日:2022/10/29 最終更新日:2022/10/29
知っておくと良いJavaScript/TypeScriptで最後にセミコロン(;)をつける意味
JavaScriptやReactでは文末のセミコロンを記述しなくても自動的に文末を解釈をして実行してくれます。
なので、文や式の最後にセミコロンをつける手間が省くことが出来ます。
しかし、ECMA Internationalの「TC39」ではこの仕様は失敗だったとも考えられているようです。
見方によってはコード量が多くなるにつれてセミコロンの記述量も増えますので、手間の削減のように感じられますが実際にコーディングにおいて有効なのかどうかを考えてみたいと思います。
セミコロン削減のメリット
単純に書かなくても良くなる
最後に「;」を付ける手間が省けます。
地味にめんどくさいなと思っている作業なのでこの点ではいいのかもしれません。
人によってはコードが見やすくなる
スッキリしてていいよねと感じる人がいると思います。
私自身もない方が見やすいなと思う節があるので、この点は同意です。
セミコロン削除のデメリット
ここは重要です。
返り値がundefinedになることがある
function addFunc() {
let a = 100, b = 200
return
a + b
}
console.log('合計 : ',addFunc())
// 結果 undefined
この場合、a+bの足し算をしてその合計である300が出力されることを想定しています。
しかし、この関数ではundefinedが出力されます。
return直後に改行を入れた場合、文末にセミコロンがない場合はreturnされるものがないと解釈をされてしまいます。
(以下、執筆中、、)