JavaScript

スポンサーリンク
JavaScript

【テクニカル・上級編】forループと非同期処理:varとletで挙動が激変する理由とクロージャの生成タイミング – JavaScriptコア文法・モダン言語仕様と変数・関数解析バイブル

ループと非同期処理のランタイム解剖学:`var`が引き起こす破滅と、`let`がV8ヒープに刻む不可視の防壁JavaScriptエンジニアであれば、一度は踏み抜いたことがある罠がある。非同期処理を伴う`for`ループの中で`var`を使い、...
JavaScript

【実務・中級編】forループと非同期処理:varとletで挙動が激変する理由とクロージャの生成タイミング – JavaScriptコア文法・モダン言語仕様と変数・関数解析バイブル

コードレビューをしていて、未だに最も多く遭遇するアンチパターンの一つが「`for`ループと`setTimeout`の組み合わせによる非同期処理のバグ」だ。「なぜかコンソールに配列の長さと同じ数値(例えば `5` や `10`)がループ回数分...
JavaScript

【入門編】forループと非同期処理:varとletで挙動が激変する理由とクロージャの生成タイミング – JavaScriptコア文法・モダン言語仕様と変数・関数解析バイブル

こんにちは!日々の開発、本当にお疲れ様です。JavaScriptを書き始めて少し経つと、「あれ、なんだかループと非同期処理の組み合わせで変数の値がおかしくなるぞ……?」という壁にぶつかったことはありませんか?例えば、画面のボタンクリックやタ...
JavaScript

【テクニカル・上級編】V8エンジンにおけるconstの最適化:イミュータブルな変数とヒープメモリの挙動 – JavaScriptコア文法・モダン言語仕様と変数・関数解析バイブル

V8エンジンにおけるconstの最適化:イミュータブルな変数とヒープメモリの挙動JavaScriptのコードを書く際、私たちは何気なく `const` を使い、変数の再代入を防いでいる。初学者は「値を変えないための安全装置」と教わり、シニア...
JavaScript

【実務・中級編】V8エンジンにおけるconstの最適化:イミュータブルな変数とヒープメモリの挙動 – JavaScriptコア文法・モダン言語仕様と変数・関数解析バイブル

V8エンジンにおける `const` の真実:イミュータブルの幻想とメモリ最適化の舞台裏コードレビューをしていて、未だに「変数の再代入がないからとりあえず `const` にする」という表面的な理解でコードを書いているエンジニアを見かける。...
JavaScript

【入門編】V8エンジンにおけるconstの最適化:イミュータブルな変数とヒープメモリの挙動 – JavaScriptコア文法・モダン言語仕様と変数・関数解析バイブル

こんにちは!フロントエンドからNode.jsの深部まで、JavaScriptの生態系を知り尽くしたチーフアーキテクトの私です。皆さんは日々の開発で変数を作る時、なんとなく `const` を使っていませんか?「再代入できないんでしょ?」とい...
JavaScript

【テクニカル・上級編】クロージャとスコープチェーンのメモリリーク:letで解決する循環参照の罠 – JavaScriptコア文法・モダン言語仕様と変数・関数解析バイブル

クロージャとスコープチェーンのメモリリーク:letが書き換えたV8ガベージコレクションの物理法則JavaScriptのランタイムにおいて、「クロージャ(Closure)」と「スコープチェーン」は、言語の表現力を無限に広げた最大の功績であると...
JavaScript

【実務・中級編】クロージャとスコープチェーンのメモリリーク:letで解決する循環参照の罠 – JavaScriptコア文法・モダン言語仕様と変数・関数解析バイブル

はじめに:コードレビューの現場から「なぜ、このSPA(シングルページアプリケーション)は画面遷移を繰り返すたびにメモリ使用量が右肩上がりに増え続けるのか?」テックリードとしてコードレビューを行っていると、今だにこの悪夢のような問いに直面する...
JavaScript

【入門編】クロージャとスコープチェーンのメモリリーク:letで解決する循環参照の罠 – JavaScriptコア文法・モダン言語仕様と変数・関数解析バイブル

こんにちは!JavaScriptの世界へようこそ。フロントエンドの裏側からNode.jsのランタイムまで、日々JavaScriptと向き合っていると、「動くけれど、なぜかメモリがじわじわと削られていく……」という不気味な現象に出会うことがあ...
JavaScript

【テクニカル・上級編】なぜ現代のJavaScript開発でvarを禁止すべきなのか:スコープ汚染が引き起こすバグの再現実験 – JavaScriptコア文法・モダン言語仕様と変数・関数解析バイブル

varという名の時限爆弾:V8ヒープの汚染とスコープ崩壊のメカニズムJavaScriptエンジニアとしてキャリアを積んできた者であれば、`var` がいかに邪悪な遺物であるかを一度は耳にしたことがあるはずだ。しかし、「なぜ使ってはいけないの...
スポンサーリンク