データ型と型判定(プリミティブとオブジェクト, typeof, 暗黙の型変換)

スポンサーリンク
JavaScript

【テクニカル・上級編】 Array.isArray と instanceof Array の違い – JavaScript実践ガイド

境界線を越える配列:`instanceof`が抱える死角と、`Array.isArray`が真に解決するものWebアプリケーションの規模が拡大し、マイクロフロントエンドやサードパーティの埋め込みスクリプトが混在する現代のフロントエンド開発に...
JavaScript

【テクニカル・上級編】 Symbol.toStringTag プロパティ – JavaScript実践ガイド

隠されたメタプログラミング:`Symbol.toStringTag` が変える「型判定」の解像度JavaScriptの型判定において、我々が最も信頼を置いているのは何だろうか? `typeof` か? いや、あれは `null` を `ob...
JavaScript

【テクニカル・上級編】 typeof null が object を返す仕様 – JavaScript実践ガイド

JavaScriptの「原罪」と向き合う:なぜ `typeof null` は `object` なのかJavaScriptを深く愛する諸君であれば、一度は `typeof null === 'object'` という、この言語最大の「遺物...
JavaScript

【テクニカル・上級編】 ユーザー定義型ガード (User-Defined Type Guards) – JavaScript実践ガイド

型の霧を晴らす:ユーザー定義型ガードで実現する「堅牢な」ドメインモデリングJavaScriptという言語は、その柔軟性ゆえに「実行時まで何が入ってくるか分からない」というカオスを孕んでいます。特にAPIから受け取るJSONデータや、複雑なコ...
JavaScript

【テクニカル・上級編】 MapおよびSetオブジェクトの型判定 – JavaScript実践ガイド

MapとSetを「正しく」検知する:深淵なる型判定のアーキテクチャフロントエンドの戦場では、`typeof` が使い物にならない瞬間に幾度となく出くわすはずだ。プリミティブ型の判定には便利だが、`Map` や `Set` のようなコレクショ...
JavaScript

【テクニカル・上級編】 RegExpオブジェクトの型判定 – JavaScript実践ガイド

正規表現の「正体」を見極める —— 堅牢なJSアーキテクチャのための型判定論フロントエンドの深淵を覗き込むとき、我々が最も警戒すべきは「直感」という名の罠だ。特に、JavaScriptにおける `RegExp` オブジェクトの取り扱いは、多...
JavaScript

【テクニカル・上級編】 Dateオブジェクトの型判定 – JavaScript実践ガイド

なぜ、Dateオブジェクトの判定ひとつでアプリケーションは崩壊するのかJavaScriptのフロントエンド開発において、「型」は常に悩みの種だ。特に、古の遺物である `Date` オブジェクトを扱うとき、多くのエンジニアが「なんとなく」動く...
JavaScript

【テクニカル・上級編】 抽象操作 ToPrimitive の仕様詳細 – JavaScript実践ガイド

迷宮の入り口:JavaScriptの「型」という不可視の重力フロントエンドのアーキテクチャ設計において、我々が日々直面するバグの多くは、実はこの「型変換」の不可視な挙動に起因している。特に、`ToPrimitive` という抽象操作の仕様を...
JavaScript

【テクニカル・上級編】 抽象操作 ToBoolean の仕様詳細 – JavaScript実践ガイド

暴走する「暗黙の型変換」を制す:抽象操作 `ToBoolean` の深淵と、堅牢なアーキテクチャの境界線JavaScriptという言語は、その柔軟性ゆえに「甘い罠」を至る所に仕掛けている。特に、if文の条件式や論理演算子で発生する暗黙の型変...
JavaScript

【テクニカル・上級編】 抽象操作 ToString の仕様詳細 – JavaScript実践ガイド

JavaScriptの深淵:`ToString`抽象操作が引き起こす「暗黙の罠」とアーキテクチャへの教訓フロントエンドのアーキテクトとして数々の地獄のようなデバッグ現場を見てきたが、結局のところ、多くのバグは言語仕様の「隙間」で起きている。...
スポンサーリンク