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

スポンサーリンク
JavaScript

【テクニカル・上級編】 @importによる外部型定義のインポート – JavaScript実践ガイド

JSDocと`@import`で切り開く、TypeScriptに頼らない「純粋JS」の型駆動アーキテクチャこんにちは。ブラウザのC++エンジン(V8やSpiderMonkey)がパースするバイトコードの匂いを嗅ぎつけるだけでご飯が3杯いける...
JavaScript

【テクニカル・上級編】 jsconfig.jsonとcheckJsによる型チェックの有効化 – JavaScript実践ガイド

ゆるふわJavaScriptに別れを告げよ:`jsconfig.json` と `checkJs` で実現する、TypeScriptを導入しない型安全の極限夜な夜なコードレビューをしていると、未だに見かけるんだよね。「うちはTypeScri...
JavaScript

【テクニカル・上級編】 @paramと@returnsによる関数インターフェースの定義 – JavaScript実践ガイド

TypeScript導入前夜の防壁:JSDocによる関数インターフェース設計とCheckJSの極意こんにちは。フロントエンドの裏側、ブラウザのJSエンジンがせっせとJITコンパイルを行っている熱気を感じるのが好きな、ただのコード愛好家です。...
JavaScript

【テクニカル・上級編】 @callbackによる関数シグネチャの定義 – JavaScript実践ガイド

コールバックの「なんとなく実装」に別れを告げよ:`@callback`による型安全とアーキテクチャ防衛術JavaScriptという言語は、その極めて緩やかな動的型付けの性質ゆえに、スタートアップのプロトタイピングからエンタープライズの巨大S...
JavaScript

【テクニカル・上級編】 @typedefによるカスタム型定義 – JavaScript実践ガイド

JavaScriptという言語は、その極限までの柔軟性と「動的型付き」という名の自由度ゆえに、プロダクトがスケールするにつれて私たちエンジニアの牙を剥いてくる。TypeScriptの導入が既定路線となった昨今でも、レガシーなビルドパイプライ...
JavaScript

【テクニカル・上級編】 比較演算子(<, >)と数値変換の挙動 – JavaScript実践ガイド

JavaScriptの型システム――この言葉を聞いて、思わず苦い笑みを浮かべるシニアエンジニアは少なくないはずだ。私たちは日々、TypeScriptという強固な鎧を纏い、コンパイル時の型安全性に酔いしれている。しかし、ブラウザのJavaSc...
JavaScript

【テクニカル・上級編】 論理演算におけるTruthy/Falsyの誤解 – JavaScript実践ガイド

JavaScriptにおけるTruthy/Falsyの魔窟:なぜ `[]` は `true` なのかこんにちは。日々、V8エンジンの機嫌を取りながら数百万行のSPAのメモリプロファイルと格闘しているチーフアーキテクトだ。JavaScript...
JavaScript

【テクニカル・上級編】 等価演算子(==)による暗黙の型変換の罠 – JavaScript実践ガイド

抽象等価の呪縛:`==` が引き起こす暗黙の型変換という名のパンドラの箱やあ、フロントエンドの荒波を航海する同志たちよ。今日もコードレビューで「なんでこんなバグを踏むんだ…」と頭を抱えているかい?JavaScriptという言語は、その緩やか...
JavaScript

【テクニカル・上級編】 加算演算子における文字列連結と数値加算の優先順位 – JavaScript実践ガイド

加算演算子の魔力:`+` が引き起こす暗黙の型変換と、V8エンジンが裏で泣かないためのアーキテクチャ設計こんにちは。日夜、フロントエンドのパフォーマンスチューニングとメモリプロファイリングに明け暮れるチーフアーキテクトの私だ。さて、Java...
JavaScript

【テクニカル・上級編】 型判定ライブラリの比較(lodash.is等) – JavaScript実践ガイド

型判定の沼:なぜ「たかが `typeof`」でプロダクションが落ちるのかフロントエンドのアーキテクチャがどれほど洗練されていようとも、アプリケーションの根底にあるのは「データ」と、それをさばくJavaScriptの泥臭い現実だ。特に「型判定...
スポンサーリンク