お品書き
書き直し中…
とりあえず、中へどうぞ
↓↓↓
スポンサーリンク

変数の宣言【JavaScript覚書】

WEBデザイン
JavaScriptの変数の宣言覚書

宣言の仕方
var 変数名; var 変数名 = '内容' ;
var test = 1 ; var test = 'hogehoge' ; var test = document.getElementById('hogehoge');
その他の変数(?)

var ←なんでも入れられる
const ←内容を変更できない変数(定数)※1
let ←ブロック(スコープ)内でのみ有効な変数 ※2

※1 内容は固定で入れ替えられない、再利用(再宣言)も不可
※2 内容は入れ替えられるけれど再利用(再宣言)は不可
varとlet,constのスコープは異なります。
例えば、varはif文の外で宣言された場合、if文の中でも利用できます。
letとconstはスコープ外となり利用できません。
(https://techacademy.jp/magazine/14872)

「 const 」は覚えにくいなぁと思って、何の略か検索したら、「 constant 」(コンスタント)の略でした。「 constant 」はそのまま直訳で「定数」と。なるほど。。。(^^;)

では「 var 」は何の略かと思ったら、「 variable 」の略だそうで。これまた、直訳で「変数」でした(^^;)
(なんとなく、value の略なのかと思っていたのですが、違いました。valueだったら「 val 」ですし、value は他で使われてますしね。

では「 let 」は何の略7日と思ったら、略ではなく、英語の動詞の「 let 」ではないか?とのこと。

数学用語の「…をXとする」みたいな言い方を英語で言う時「 let X be 」というのだそうで。
(https://ejje.weblio.jp/content/let+x+be)

「 let 」だけは、他のプログラム言語の影響を受けて(倣って)後発で決められたものなので、単語の略のような意味ではなくなったようですね。

他にも変数として使われるものが登場して、やがてvarは廃れるだろうと言う説も?
JavaScriptの変数宣言はletにすべきか 『入門JavaScriptプログラミング』から解説
 JavaScriptの変数宣言で馴染み深いvarは、letとconstが追加されたことで使われなくなっていくだろう、と『入門JavaScriptプログラミング』の著者J.D.Isaacksは書いています。再代入が必要ないときはconst、再代入が必要なときはletを使うほうがいいのだと。今回、本書からletについて詳しく紹介します。本書ではconstについても解説していますので、ぜひチェックしてみてください。…
codezine.jp
整理すると、

変数はこれまで「 var 」が使われていたけれど、スコープ内でしか使えない/再宣言できない「 let 」が後に登場した。

constはそもそも「変数」じゃなくて「定数」

ってことですね。

そして、 let も const もスコープが限定されている、と。

「var」は型(数値とか文字列とかの判別)を選ばずなんでも入れて良い、かなり融通の効く変数だったわけですが。

なんでも入れられると便利そうですけどね(^^;)

それでは不具合が起きる事があって※、スコープ限定の変数/定数が後に登場した、と。

※長いプログラムになった時に、ずっと前に宣言した変数を、後半で忘れてまた再利用してしまいバグになる、みたいな。

再宣言が禁止されているのもそのためなんですね。

コメント