診断結果のパターンを作る上で大切なこと2選。
この記事では、将来プログラミングをできるようになるために、プログラムについて学んだ知識を解説していく記事です。
今日学んだプログラミングの知識。
厳格モード use strict。
変数と定数。
厳格モード use strict。
今回から、 'use strict'; という見慣れないコードが出てきました。
'use strict'; は、宣言後の記述ミスをエラーとして表示してくれる機能を呼び出すための記述です。
日本語では「厳格モードを使う」という意味です。
JavaScript ではこの厳格モードを使うことでコーディングの自由度を制限できます。
自由度を制限するとコーディングが大変になりそうですが、これは良いコードを書く上で大事です。
厳格モードによって変わる挙動の代表例として、変数宣言が挙げられます。
例えば以下のコードを Chrome のデベロッパーツールの Console 上で実行してみます。
let answer = 100;
anwer = 1;
console.log(answer);
console.log(anwer);
Copy
すると以下のようにエラーが起きずに、値が表示されると思います。
100
1
ここからわかるのは anwer という変数が let や const などの変数宣言のキーワードなしに、勝手に宣言されてしまっているということです。
厳格モードを使わない場合、変数宣言をしなくてもエラーが起きません。
一見すると便利にですが、タイポをしてしまったときにタイポのまま変数が宣言されてしまいます。
上記のように answer と入力しようとして anwer とタイポしてしまったときに、 変更したかった変数 answer の値が変更されませんので混乱してしまいます。
ブラウザを再読み込みしてから、以下のコードをコンソールで実行してみます。
'use strict';
let answer = 100;
anwer = 1;
console.log(answer);
console.log(anwer);
Copy
おそらく以下のようなエラーが出ました。
Uncaught ReferenceError: anwer is not defined
エラーの意味は「anwer が宣言されていません」という意味です。
このように厳格モードを設定することで、変数として宣言されていなければエラーが出力されるようになります。
プログラミングでは、自分の意図しない挙動をする場合があります。
そのような意図しない挙動をさせずに、できるだけ自分の意図に沿ったプログラミングを行うために今後は厳格モードを使っていきましょう。
MDN をはじめとする JavaScript のドキュメントにおいても、大抵の場合厳格モードの挙動に基づいて説明されていますので、 JavaScript を書く際は厳格モードを使うようにしましょう。
変数と定数。
今回は、 let ではなく const(コンスト)という変数宣言を利用しています。
const で宣言された変数は、一度代入すると再代入できません(変数の値を後から変更できません)。これを定数といいます。
const は「定数、一定」という意味の英単語 constant に由来します。
const と let の使い分けはどのようにしていけばよいでしょうか?
基本的に定数を用いることで、意図しない値の変更を防ぐことができます。そのため、開発に定数を用いると、スムーズに進みやすいです。
ですから JavaScript の開発では、次の指針で変数宣言の方法を決めるのがよいでしょう。
まずは const の使用を検討します。
変数の値を変更する必要がある場合のみ、let を使用します。
ですが、特別な理由がない限り、var は使用しないようにしましょう。
まとめ
今回は威格モードや変数と定数に関したプログラミングの内容を解説しました。
この威格モードのようなコードの助けをするようなシステムは今後かなり必要になってくると思うのでしっかり身につけていきたいです。
この記事が気に入ったらサポートをしてみませんか?