こんにちは yicodeです。
今日はJavaScriptの変数の宣言方法について解説していきたいと思います。
自分もプログラミング初心者ですが人に説明できるようになると理解も深まると思い、
この記事を作ろうと思いました。間違い等がございましたらコメントに書いてくださると
助かります。
変数とは
まず変数とはなにかからですね。
変数とはデータを入れておく箱のようなものです。
箱に名前を書いておいてあとから何度も取り出すときに取り出しやすくするものです。
ではJavaScriptでの変数宣言の仕方について見ていきます。
JavaScriptでの変数宣言
JavaScirptの変数宣言は let、 const、 var、 の三種類の変数宣言の方法あります。
let A = 10;
const B = 10;
var C = 10;
console.log(A); //10が表示される
console.log(B); //10が表示される
console.log(C); //10が表示される
まず1番上のletの宣言方法から見ていきます。
let A = 10;
let 変数名 = 初期値;
上のコードを見ていくとまずletでAという変数名を宣言して
代入演算子(=)によって10という値をAに代入します。
はじめの例でいうと、Aという名前をつけた箱に10という値を入れたことになります。
またletで宣言した値は変数という名前の通り値をあとから変更することが可能です。
- 例
let A = 10;
A = 10;
次にconstの宣言方法について見ていきます。
constもletと同じように変数の宣言をします。
しかしletと一つ違うところが有りあとから値を変える事ができないようになっています。
const B = 10;
B = 10;
先程のように値を変えようとすると
/home/jail/prog.js:15
B = 10
^
TypeError: Assignment to constant variable.
at Interface.<anonymous> (/home/jail/prog.js:15:6)
at Interface.emit (node:events:532:35)
at Interface.close (node:readline:586:8)
at Socket.onend (node:readline:277:10)
at Socket.emit (node:events:532:35)
at endReadableNT (node:internal/streams/readable:1346:12)
at processTicksAndRejections (node:internal/process/task_queues:83:21)
このようなコンパイルエラーが出るためconstでの値の変更はできません。
最後にvarの宣言方法について見ていきましょう。
varはletとほとんど同じように値の後からの変更が可能です。
しかしvarにはコードを書くときの問題点があります。
let A = 10;
let A = 9 //SyntaxError: Identifier 'A' has already been declared
上のコードのようにletでは同じ変数名を二重に書くとエラーが出るのですが
varでは二重似変数名を書いてもエラーが出ません。
var A = 10;
var A = 9
何故二重に変数名を書いてしまうといけないのかというと後から書いた変数名に
はじめに書いた変数名が上書きされてプログラムが壊れてしまう恐れがあるからです。
なのでvarは使わないほうが良いですね。
変数名のルール
変数名にもルールがありますこれを守らないとエラーが出てしまうので気をつけましょう。
- 数字で始まる名前
- _以外の記号が使われている名前
- 予約語と被る名前は利用できない
などがあります
例
let 45A = 10; //数字から始まっているためエラー
let #tyu = 10; //_以外の記号が使われているためエラー
let let = 10; //letは予約語のためエラー
予約語については他にも色々あるため変数を宣言するときに気になる人は探してください。
最後に
今日は変数について説明していきました。多分次回もプログラミングの説明をしていきます
ここが間違っているなどの指摘があればすぐに直すのでコメントにて連絡ください。
よろしくおねがいします。