【へんすう】

変数 とは?

最終更新:
💡 値に名前を付けて、処理で使う

値に名前を付け、プログラムの計算や処理で参照する仕組み。再代入や型、使える範囲のルールは、言語や宣言方法によって異なる。

📌 このページのポイント
名前への再代入と、中身の変更 let age = 25 25 26 age = 26:再代入できる const scores [80, 95] [80, 95, 100] pushで追加できる constは同じ名前への再代入を禁止
JavaScriptの例。letは再代入でき、constは再代入できない。constでも、参照している配列の中身は変更できる。
ひよこ ひよこ
変数は何のためにあるの?
ペンギン先生 ペンギン先生
値に名前を付け、計算や処理の中で参照するためだよ。たとえばJavaScriptで「const discountRate = 0.05」とすれば、その名前で割引率を使える。「名前の付いた箱」はイメージとして便利だけれど、実際の仕組みは言語によって違うんだ。
ひよこ ひよこ
letとconstの違いは?
ペンギン先生 ペンギン先生
JavaScriptのletは再代入ができ、constは再代入できないよ。ただしconstでも、参照している配列やオブジェクトの中身は変更できる。たとえば「const scores = [80, 95]」の後に「scores.push(100)」はできる。別の配列をscoresへ代入し直すことはできないんだ。
ひよこ ひよこ
変数名は長いほどいい?
ペンギン先生 ペンギン先生
長さより、何を表すか分かることが大事だね。合計ならtotalPrice、利用者名ならuserNameなどが考えられる。座標を扱う文脈ならxやyも分かりやすい。読む人が意味を判断できる名前にしよう。
ひよこ ひよこ
スコープって何?
ペンギン先生 ペンギン先生
その名前を参照できる範囲だよ。JavaScriptのletやconstをブロック内で宣言すると、そのブロックの外からは参照できない。varはブロックではなく関数の範囲を基本とするなど、宣言によってルールが異なるんだ。
ひよこ ひよこ
変数の型はずっと同じ?
ペンギン先生 ペンギン先生
言語によるよ。Pythonでは名前がオブジェクトを参照し、同じ名前を後から別の型のオブジェクトへ結び付けられる。オブジェクト自体の型が変わるという意味ではない。別の言語では宣言した型によって代入できる値が制限されるので、使う言語のルールを確認しよう。
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「変数」って出てきたら「値に名前を付け、処理で参照する仕組み」と思えればだいたいOK!
📖 おまけ:英語の意味
「Variable」 = 変わり得るもの
💬 値が変わり得ることに由来する言葉だよ。ただし、再代入できるかは言語や宣言のルールで決まるんだ。

参考資料

← 用語集にもどる