6
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

【JavaScript】「セミコロン」について学ぶ

Last updated at Posted at 2018-08-25

「ノンプログラマのためのJavaScript はじめの一歩」 第2章 JavaScriptの文法 より

  • ; は文章の終わりを明示する
  • 改行をする場合に限り、文末の ; を省略できる

気になったこと

しかし、セミコロンを省略すると意図しない動作になることがあるので、必ずセミコロンを付けましょう。
P.20より引用

「意図しない動作」とは…?
改行とセミコロンの省略の関係を軽く調べてみた。

JavaScriptは、セミコロンを省略しても 特定の条件で自動でセミコロンを挿入 して解釈してくれる仕様になっている。
この「特定の条件」に当てはまらない場合に「意図しない動作になる」らしい。

例えば、、、

var a = 1;
(function() {
  console.log(a);
})(); //-> 1

このコードからセミコロンを省略すると

var a = 1
(function() {
  console.log(a)
})() //-> Uncaught TypeError: 1 is not a function

// このように認識されている
var a = 1 (function() {
  console.log(a);
})();

今の知識力では、「特定の条件」を全て理解するのは難しいけれど、「必ずセミコロンを付けましょう」の理由を理解することはできた。


参考サイト
6
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?