最近のJavascriptの書き方

2019.04現在のECMAScriptブラウザ対応状況はこちら

IE11以外のブラウザでは、殆どES6が使えます。プロジェクトによってはIEが外せない場合もあるのでIE11でも使える書き方を紹介します。

 


ブロックスコープ

定数、変数には影響範囲があります。しかし、Javascriptにはブロックスコープがなくグローバル汚染を防ぐために即時関数を書いていました。

今は、 {} で囲むだけでブロックスコープとなります。

変数宣言

今までは var 宣言が使われていました。var宣言した変数はグローバル変数なので、
ブロックスコープに対応しておらずバグなどの原因になりやすかったです。
ES6からは極力 var は避け、 let, constを使うと、変数の影響範囲が絞られデバッグ等がしやすくなります。

let
  • 値に名前をつけて取り扱いたい時
  • 値を使いまわしたい時
  • 再代入可能な変数を扱いたい時
構文 意味
let 変数名 = 値 変数にデータを代入。値の再代入は可能。
初期値を省略した場合undefinedを返す。
const
  • 値に名前をつけて取り扱いたい時
  • 値を使いまわしたい時
  • 再代入不可能な定数を扱いたい時
構文 意味
const 定数名 = 値 定数にデータを設定。値の再代入は不可。
初期値は省略できません。

 


間庭のデスクに『JavaScript コードレシピ集』という書籍(ラボ購買品)が置いてありますので、興味のある方はどうぞ。