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」は型(数値とか文字列とかの判別)を選ばずなんでも入れて良い、かなり融通の効く変数だったわけですが。 なんでも入れられると便利そうですけどね(^^;) それでは不具合が起きる事があって※、スコープ限定の変数/定数が後に登場した、と。 ※長いプログラムになった時に、ずっと前に宣言した変数を、後半で忘れてまた再利用してしまいバグになる、みたいな。 再宣言が禁止されているのもそのためなんですね。
コメント