Skip to content

mapKeys

キーを getNewKey 関数が返すキーに置き換えた新しいオブジェクトを返します。値は元のオブジェクトの値と同じです。

インターフェース

typescript
function mapKeys<T extends Record<PropertyKey, any>, K extends PropertyKey>(
  object: T,
  getNewKey: (value: T[keyof T], key: keyof T, object: T) => K
): Record<K, T[keyof T]>;

パラメータ

  • obj (T extends Record<PropertyKey, any>): キーを置き換えるオブジェクト。
  • getNewKey: ((value: T[keyof T], key: keyof T, object: T) => K): 新しいキーを生成する関数。

戻り値

(Record<K, T[keyof T]>): キーが置き換えられた新しいオブジェクト。

typescript
const obj = { a: 1, b: 2 };
const result = mapKeys(obj, (value, key) => key + value);
console.log(result); // { a1: 1, b2: 2 }

パフォーマンス比較

Bundle SizePerformance
es-toolkit138 bytes (99.1% smaller)2,844,013 times (11% faster)
es-toolkit/compat1,124 bytes (93.2% smaller)2,899,524 times (13% faster)
lodash-es16,649 bytes2,559,949 times

MIT ライセンスの下で配布されています。