はじめに Java8から追加されたStream APIのpeekをTypeScriptでする場合の実装例です。 C#の拡張メソッドのようにArrayにpeekというメンバーを追加することで実現していきます。 方法 TypeScript1.8から追加されたGlobal augmentationを使います。 これをすることで、補完機能や型チェックを効かせながらpeekを使用できるようにします。 #global-augmentation Declaration Merging · TypeScript 実装例 declare global { interface Array<T> { // JavaのStream#peekを参考に実装 peek( callbackfn: (value: T, index: number, array: T[]) => void, thisArg?: any ):
