JavaScriptにおける変数では、letがあります。
let a = 1 + 2;
これは皆さんご存じだと思うので、今回は変数の概念について説明していきます。
【変数】
変数とは…
コンピュータに対して「文字や数値」を覚えさせるための「本」を用意する必要があり、その「本」のことを変数というのです。言い換えると、変数を用意してあげないとコンピュータは覚えられないということです。
以上のことを考慮してまとめると、
変数 = 「本」
変数名 = 「本が本棚の何段目にあるのかを知らせるための名前」
であり、計算した結果の場所が変数の中に含まれているのです。
変数とは、値を持っているというわけではなく、計算した結果
let a = 1 + 2;
をメモリといわれる記憶領域である「本棚」に保存するのです。
変数は、その「本棚」である記憶領域のどこに保存したか、すなわち場所を覚えさせるためのものであるのです。
これは、コンピュータの中身で起こっている作業であるので、覚えておくと便利です。この概念はハードウェアやIotの分野で必要な概念です。
【== と === の違い】
以上の概念を考慮して、== と=== の違いについて考えると、
== は、変数の中身での評価が行われる。
=== は、変数の中身だけでなく、変数の保存されている場所も含めた評価が行われているということです。
すなわち、「本棚どこに保存されているのか」も評価の対象になっているのです。