JavaScript - varキーワード

こんにちは、未来のJavaScript魔法使いの皆さん!今日は、JavaScriptの変数の世界に楽しい旅に出発します。特にvarキーワードに焦点を当てます。あなたの近所の親切なコンピュータ教師として、プログラミング冒険の基盤となるこの基本的な概念を案内します。では、仮想の魔杖(キーボード)を手に取り、一緒に潜りましょう!

JavaScript - var Keyword

文法

まず基本的なことをから始めましょう。JavaScriptでは、varキーワードを使って変数を宣言します。変数は、さまざまな情報を保持する魔法の容器と考えられます。以下のように作成します:

var magicNumber = 42;
var wizardName = "Merlin";
var isWizard = true;

これらの例では、3つの変数を作成しています:

  1. magicNumberは数(42)を保持
  2. wizardNameは文字列("Merlin")を保持
  3. isWizardはブール値(true)を保持

JavaScriptは優しいアシスタントのように、あなたが保存するデータの種類を指定する必要はありません。それを自分で判断します!

JavaScript変数のスコープ

次に少し高度な話題に移りましょう。JavaScriptの魔法の世界では、変数が存在する異なる領域、すなわちスコープがあります。

グローバルスコープ

関数の外で変数を宣言すると、それがグローバル変数になります。まるでホグワーツの大広間で宣言したかのようで、みんなに聞こえます!

var globalSpell = "Lumos";

function castSpell() {
console.log(globalSpell); // 出力: "Lumos"
}

castSpell();
console.log(globalSpell); // 出力: "Lumos"

関数スコープ

関数内で宣言された変数は、その関数内でのみアクセス可能です。まるで秘密の呪文を囁くかのようで、関数内の人間だけが聞こえます。

function learnSecretSpell() {
var secretSpell = "Alohomora";
console.log(secretSpell); // 出力: "Alohomora"
}

learnSecretSpell();
console.log(secretSpell); // エラー: secretSpellは定義されていません

JavaScript変数のホイスト

ここでJavaScriptが少し難しくなる的部分です。JavaScriptには独特な行動、ホイストがあります。まるでクイディッチの試合の前に、すべての broom がフィールドの上に浮かんだかのようです。

console.log(magicWand); // 出力: undefined
var magicWand = "Elder Wand";

JavaScriptは宣言(初期化ではない)を上に持っていきます。まるでコードが以下のように書かれたかのようです:

var magicWand;
console.log(magicWand); // 出力: undefined
magicWand = "Elder Wand";

'var'キーワードを使った変数の再宣言

いくつかの厳しいプログラミング言語とは異なり、JavaScriptはvarを使って変数を再宣言するのに非常に許容的です。まるでペットのフクロウを何度も名前を変えても問題ないかのようです!

var owl = "Hedwig";
console.log(owl); // 出力: "Hedwig"

var owl = "Errol";
console.log(owl); // 出力: "Errol"

一つのステートメントで複数の変数を宣言する

時間を節約し(そして手首の疲労を防ぐために)、一つのステートメントで複数の変数を宣言することができます。まるで一つの魔法の動作で複数の呪文を唱えるかのようです!

var spell1 = "Expelliarmus",
spell2 = "Expecto Patronum",
spell3 = "Wingardium Leviosa";

ループ内でのvarキーワードの使用

varキーワードは特にループ内で便利です。まるで魔法のカウンタがあなたの呪文を追跡するかのようです:

for (var i = 1; i <= 3; i++) {
console.log("呪文を唱える " + i);
}
// 出力:
// 呪文を唱える 1
// 呪文を唱える 2
// 呪文を唱える 3

ただし、注意してください!ループ変数iはループ終了後も存在するので、必ずしも望まない結果になるかもしれません。

デストラクチャリングでの宣言

最後に、少し高度な技術であるデストラクチャリングを見てみましょう。まるで魔法のアイテムが満載の荷物を一度に unpack するかのようです:

var [spell, wand, potion] = ["Lumos", "Holly", "Felix Felicis"];
console.log(spell);  // 出力: "Lumos"
console.log(wand);   // 出力: "Holly"
console.log(potion); // 出力: "Felix Felicis"

これにより、配列から複数の変数を一つの行で割り当てることができます。すごいですね?

今まで学んだすべての方法を便利な表にまとめます:

方法 説明
基本宣言 単一の変数を宣言 var magicNumber = 42;
グローバルスコープ 到處でアクセス可能な変数を宣言 var globalSpell = "Lumos";
関数スコープ 関数内でのみアクセス可能な変数を宣言 function() { var secretSpell = "Alohomora"; }
ホイスト 変数がスコープの上に移動 console.log(x); var x = 5;
再宣言 同じ変数を複数回宣言 var owl = "Hedwig"; var owl = "Errol";
複数宣言 一つのステートメントで複数の変数を宣言 var spell1 = "Expelliarmus", spell2 = "Expecto Patronum";
ループ宣言 varをループ内で使用 for (var i = 0; i < 5; i++) { ... }
デストラクチャリング 配列から複数の変数を割り当て var [spell, wand] = ["Lumos", "Holly"];

そしてここまで、若い魔法使いの皆さんがJavaScriptのvarキーワードに関する最初のレッスンを終了しました。记住、魔法のスキルをマスターするのと同じように、JavaScriptを熟練させるには練習が必要です。codingを続け、実験を続け、最も重要なのは、楽しむことです!次回のレッスンまで、バグのないコードと適切に宣言された変数をお祈りします!

Credits: Image by storyset