変数とスコープ(const, let, var, ブロックスコープ, 巻き上げ)

スポンサーリンク
JavaScript

【実務・中級編】 グローバルスコープとグローバルオブジェクト – JavaScript実践ガイド

「window」という名のパンドラの箱:グローバル汚染からコードを守るための処方箋現場でコードをレビューしていると、いまだに「なぜか動くから」という理由でグローバルスコープを汚染しているコードに出くわすことがある。特にブラウザ環境における ...
JavaScript

【実務・中級編】 関数スコープの概念 – JavaScript実践ガイド

なぜ「スコープ」を理解することが、バグゼロへの最短ルートなのか現場でコードを書いていて、「なぜか変数の値が書き換わっている」「意図しない場所から変数が参照されている」といった、いわゆる「幽霊のようなバグ」に頭を抱えた経験はないだろうか?Ja...
JavaScript

【実務・中級編】 ブロックスコープの概念 – JavaScript実践ガイド

「波括弧の向こう側」を知る:ブロックスコープでJavaScriptのメモリと安全性を制御するやあ。現場でコードを書いていると、「なぜか意図しない値が残っている」「ループの中で変数が突き抜けてしまう」といったバグに頭を抱えることはないか?Ja...
JavaScript

【実務・中級編】 letとconstの巻き上げと一時的死域(TDZ) – JavaScript実践ガイド

「巻き上げ」の裏側を知れば、JavaScriptはもっと怖くない。TDZ(一時的死域)との付き合い方こんにちは。今日はJavaScriptの「巻き上げ(Hoisting)」と「一時的死域(TDZ)」について話をしよう。中級レベルに差し掛かる...
JavaScript

【実務・中級編】 varの巻き上げ(Hoisting) – JavaScript実践ガイド

「なぜ `var` はバグの温床なのか?」— 巻き上げ(Hoisting)の正体をエンジニアの視点で解き明かす現場でコードレビューをしていると、今でもたまに `var` を見かけます。「動くからいいじゃないか」という声も聞こえてきますが、結...
JavaScript

【実務・中級編】 constによる定数宣言と不変性 – JavaScript実践ガイド

「constは不変(Immutable)である」という誤解を解く――実務で生き残るためのJavaScriptスコープ論フロントエンドの現場でコードレビューをしていると、未だに「`const`を使っているからこの変数は絶対に書き換わらない」と...
JavaScript

【実務・中級編】 letによる変数宣言とブロックスコープ – JavaScript実践ガイド

なぜ今さら `let` なのか?フロントエンドの現場で「事故」を起こさないためのスコープ戦略こんにちは。現場でコードをレビューしていると、未だに `var` が混ざっていたり、かと思えば「とりあえず全部 `const` にして、どうしても変...
JavaScript

【実務・中級編】 varによる変数宣言と関数スコープ – JavaScript実践ガイド

なぜ今さら `var` なのか?――現場の「技術的負債」を読み解く作法フロントエンド開発の現場で、レガシーなコードベースをいじっているとき、ふと目に飛び込んでくる `var` の文字。「あぁ、またか」とため息をついたことはないだろうか?現代...
JavaScript

【入門編】 スコープチェーンの深さとパフォーマンス – JavaScript実践ガイド

こんにちは。フロントエンドの現場で長年コードと向き合ってきた者です。プログラミングを始めたばかりの頃、「変数のスコープ」という言葉に少し戸惑ったことはありませんか?「どこまでが有効範囲なのか?」というルールですね。今日はその中でも、ちょっと...
JavaScript

【入門編】 厳格モード(strict mode)によるスコープ制限 – JavaScript実践ガイド

こんにちは。フロントエンドの現場で長年コードを書き続けていると、「JavaScriptって自由すぎて、時に怖いよね」と感じることがよくあります。あなたが今、変数やスコープの概念で少し頭を抱えているなら、それは「JavaScriptが初心者に...
スポンサーリンク