JavaScriptにおける関数型プログラミングの実践ガイド

関数型パラダイムとは 関数型プログラミング(FP)は「値の変換」を中心に据えた設計思想である。OOPが「物」をモデル化するのに対し、FPは「関係=写像」をコード化する。React/Vue3 が再注目させた背景には、副作用を排除しテスタビリティとtree-shaking効率を高める点にある。 // 命令型 let price = 1000, tax = 1.1; let total = price * tax; // 関数型 const with ...

6月17日 20:36 投稿

Lodashの実用的な配列操作と設定ガイド

環境構築と設定方法 LodashはJavaScript開発において、特に配列・オブジェクトの操作を簡素化するための強力なユーティリティライブラリです。npmで簡単に導入できます。 npm install lodash Viteプロジェクトにおける自動インポート設定 unplugin-auto-import を利用することで、毎回import _ from 'lodash'と記述する手間を省けます。 // vite.config.ts import Auto ...

5月31日 11:12 投稿

Lodash の baseGetTag:JavaScript 値の正確な型識別メカニズム

JavaScript における値の型判定は、一見単純に見えるが、実際には typeof 演算子だけでは不十分なケースが多く存在します。たとえば、null は "object" を返し、配列や日付オブジェクトも同様に "object" と判定されます。Lodash はこの課題に対処するため、baseGetTag 関数を用いて、内部的により信頼性の高い型識別を行っています。 この関数の核となるのは、Object.pro ...

5月25日 05:30 投稿

Lodashのsliceメソッドで学ぶスパース配列とデンス配列の違い

はじめに ネイティブのsliceメソッドには互換性の問題がないため、なぜlodashが独自のsliceメソッドを実装しているのか不思議に思うかもしれません。 この質問については、lodashの作者が「why not the 'baseslice' func use Array.slice(), loop faster than slice?」というissueで回答しています:lodashのsliceは配列をデンス配列として扱い、ネイティブのsliceは配列を ...

5月15日 14:44 投稿