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

スポンサーリンク
JavaScript

【実務・中級編】 isNaNとNumber.isNaNの挙動の違い – JavaScript実践ガイド

フロントエンドの現場で、フォームの入力値バリデーションやAPIから飛んできたレスポンスの数値チェックを実装していて、思わぬバグに頭を抱えた経験はないだろうか?「あれ、この値ちゃんとチェックしたはずなのに、なんですり抜けたんだ?」JavaSc...
JavaScript

【実務・中級編】 Object.isと厳密等価演算子(===)の差異 – JavaScript実践ガイド

やあ、調子はどうだい?日々のコンポーネント実装や状態管理の設計で忙殺されていることと思うが、フロントエンドの足元を支えるJavaScriptの仕様、特に「型と値の比較」について深く考えたことはあるかい?「動くからいいや」でコードを書いている...
JavaScript

【実務・中級編】 JSDocを用いた型定義の基礎 – JavaScript実践ガイド

やあ。最近、プロダクトの規模が少しずつ大きくなってきて、型がないバニラなJavaScriptの海で溺れそうになっていないかい?「TypeScriptを導入したいけれど、ビルドパイプラインをいじる余裕がない」「レガシーなスクリプト資産が多すぎ...
JavaScript

【実務・中級編】 valueOfとtoStringの優先順位と呼び出し順序 – JavaScript実践ガイド

やあ。今日もコードと格闘しているかい?フロントエンドの現場にいると、「なんかこのコード、意図せず文字列結合されちゃうな……」「`NaN`にならないはずなのに、なんでだ?」なんてバグに遭遇することがあるよね。大抵の場合、犯人はJavaScri...
JavaScript

【実務・中級編】 Symbol.toPrimitiveによるカスタム型変換 – JavaScript実践ガイド

やあ。今日もコードと格闘しているかな?JavaScriptという言語は、ときに恐ろしいほど寛大で、ときに狡猾だ。特に「型変換」の沼には、多くのエンジニアが一度は足を取られる。`` がなぜ `true` になるのか、その裏側で何が起きているの...
JavaScript

【実務・中級編】 プリミティブのラッパーオブジェクト – JavaScript実践ガイド

おい、最近コードレビューしてて気になったんだが、「プリミティブのラッパーオブジェクト」周りの挙動をなんとなくで書いてる奴が多すぎる。「文字列に対してメソッドが生えてるんだから、JSの文字列は最初からオブジェクトなんだろ?」とか、「`new ...
JavaScript

【実務・中級編】 typeof nullがobjectである歴史的背景 – JavaScript実践ガイド

お疲れ。ちょっとコーヒーでも飲みながら聞いてくれ。フロントエンドの現場でバリバリコードを書いている君なら、一度はハマったことがあるはずだ。「あれ、なんで `null` の型チェックをしたのに `object` になるんだ?」ってね。`.ts...
JavaScript

【実務・中級編】 抽象等価演算子(==)の比較アルゴリズム – JavaScript実践ガイド

こんにちは。フロントエンドの現場で日々コードと向き合っていると、たまに「なんでこの条件分岐が `true` になるんだ……?」と頭を抱えたくなる瞬間に遭遇しますよね。特に、テストコードを書いている時や、レガシーなAPIレスポンスのバリデーシ...
JavaScript

【実務・中級編】 算術演算における暗黙の型変換 – JavaScript実践ガイド

やあ。今日も元気にコードを書いてるかい?レビューをしていて、後輩から「先輩、なんでこのコード、文字列なのに引き算したら動くんですか?」なんて質問を受けたことはないかい?そう、JavaScriptの「暗黙の型変換(Type Coercion)...
JavaScript

【実務・中級編】 Array.isArrayによる配列判定 – JavaScript実践ガイド

フロントエンドの現場で日々コードを書いていると、「目の前の変数が本当に配列なのか?」を安全に確かめたくなる瞬間は数え切れないほど訪れる。APIからのレスポンス、どこからともなく流れてくるステート、あるいは雑に組まれたレガシーなユーティリティ...
スポンサーリンク