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

スポンサーリンク
JavaScript

【実務・中級編】 型判定ライブラリの比較(lodash.is等) – JavaScript実践ガイド

お疲れ。最近、コードレビューをしていて「また `typeof` の罠にハマってるな……」って思うことがやたら多いんだよね。君も経験ないかい?APIから飛んできたレスポンスを処理する時、あるいは汎用的なユーティリティ関数を書く時に、渡された変...
JavaScript

【実務・中級編】 ラッパーオブジェクト(String, Number, Boolean)の挙動 – JavaScript実践ガイド

やあ。今日もコードと格闘ご苦労様。レビューをしていて、たまに「おっ?」と二度見するようなコードに出会うことがあるんだ。「なんでここで `new String()` なんて使ってるんだ?」ってね。中級への階段を登っている君なら、JavaScr...
JavaScript

【実務・中級編】 undefinedとnullのセマンティクス – JavaScript実践ガイド

おい、調子はどうだい?最近、コードレビューをしていて気になったんだが、お前らのコード、`undefined` と `null` をなんとなく雰囲気で使い分けてやしないか?「とりあえずエラーが出ないから `null` 入れておきました」とか、...
JavaScript

【実務・中級編】 Symbol型の特性と一意性 – JavaScript実践ガイド

やあ。最近、TypeScriptの型定義やモダンなフレームワークの裏側に隠れがちだけど、ふとした瞬間にJavaScriptのプリミティブな仕様でハマること、ないかい?「型判定を厳密にやりたい」「オブジェクトのプロパティ名が衝突するのを絶対に...
JavaScript

【実務・中級編】 BigInt型の特性と制限 – JavaScript実践ガイド

お疲れ。最近、金融系のダッシュボードや、やたらと大きなIDを扱うバックエンドAPIとの連携で、`Number`型の精度落ち(Precision Loss)に頭を悩ませていないか? 「なんかフロントエンドで受け取ったIDの末尾が勝手に `0`...
JavaScript

【実務・中級編】 ToPrimitive抽象操作の仕組み – JavaScript実践ガイド

こんにちは。君もそろそろ、JavaScriptの「なんだかよく分からないけど動く」という魔法の裏側にある、泥臭い現実を直視したくなってきた頃じゃないかな?実務でフロントエンドを書いていると、`console.log(obj + '')` な...
JavaScript

【実務・中級編】 値オブジェクト(Value Object)の作成 – JavaScript実践ガイド

おい、調子はどうだい?最近、コードレビューをしていて「またか……」と頭を抱えたポイントがあるんだ。例えば、ユーザーのメールアドレスや年齢、あるいは注文の数量などを扱うとき、君たちはそのまま `string` や `number` でコンポー...
JavaScript

【実務・中級編】 タグ付きユニオン(判別共用体)の模倣 – JavaScript実践ガイド

おい、調子はどうだ?今日も元気に `Cannot read properties of undefined (reading 'map')` と格闘してないか?(笑)フロントエンドの実務で、TypeScript全盛の時代とはいえ、結局のとこ...
JavaScript

【実務・中級編】 Symbol.hasInstanceによるinstanceofのカスタマイズ – JavaScript実践ガイド

おい、調子はどうだい?最近、社内のコードレビューをしていて「おっ」と目を引くような、ちょっと玄人好みの書き方をしているプルリクを見つけたんだ。それが今回話す `Symbol.hasInstance` だ。中級からそろそろシニアの背中が見えて...
JavaScript

【実務・中級編】 Object.prototype.toString.call()による詳細な型判定 – JavaScript実践ガイド

やあ。今日もコードと格闘ご苦労様。フロントエンドの現場にいると、APIからのレスポンスやコンポーネントのProps、ユーザーが入力したフォームの値など、「今、手元にあるこのデータ、一体本当は何の型なんだ……?」と頭を抱えたくなる瞬間に必ず出...
スポンサーリンク