Chapter 14

第二回「JavaScript講座::var,let,const」(6.24up!)

shiozumi
shiozumi
2022.06.24に更新

変数のスコープについて

まずは、変数ってなんだ?

16ビットアドレスで表現するならば、こんなメモリーイメージを浮かべてください。8000Hの番地(アドレス)から、803Fの番地(アドレス)に、00~3F までの、64個バイトのデーターが、並んでいるイメージが以下のようになりますね。1バイト(byte)データーが、変数ってことで!

8000: 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
8010: 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F
8020: 20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F
8030: 30 31 32 33 34 35 36 37 38 39 3A 3B 3C 3D 3E 3F

で、その昔は、変数(データー)のスコープなんてありませんでした。つまるところ物理的なメモリー対して、論理的、概念的なものを、後から付け加えたんですね。(;^ω^) 又、本来ならば、アドレスは、絶対に重複しませんよね。もしも住所が重複していたら郵便屋さんが、まじで困りますからね。(´;ω;`) まあ~そんな例えはどうでもよいのですが、、、要するに、言語と数字の対応が生まれてからは、(数字だけでは、プログラムが困難ですからね。当たり前だけど言語化の方向へ)結果、共通することと、区別することが、必要になって来たってことなんですね。

アセンブラを軽く触れて見ましょう!

http://schweigi.github.io/assembler-simulator/

動画解説概要(まずは、概要から)

https://youtu.be/phFpTOVypQw

let、var、constの違い!

https://techacademy.jp/magazine/14872
https://codezine.jp/article/detail/11353

動画解説その1(let, var, const)

https://youtu.be/7TJzHLktD1c

プログラミングのポイント

  1. 変数を定義して、同時に値を代入する。
  2. 変数を定義したときは値を入れずに前言して、その後の処理で、値を代入する。
    動画の中でも解説していますが、こんな単純なことなのですけど、、、バグの多くが、この程度のミスだったりするものですから、初心者のみなさんも、しっかり意識して置いてくださいね。

まとめ

今回は、このあたりで、終わりにして置きましょう。初心者に合わせて、ゆっくりひとつずつ学習して行きましょう。変数の値も、文字列とか数値とか? 変数名も自分なりに変更して、いろいろ試してくださいね。プログラミング言語の自己学習は、自分で想像した動作を、自分で確かめるところから!