Skip to content

identity (Lodash 互換性)

es-toolkitidentity を使用してください

この identity 関数は es-toolkit のメインライブラリにも同じ機能の関数があります。単に入力値をそのまま返す機能です。

代わりに、より高速で現代的な es-toolkitidentity を使用してください。

受け取った値をそのまま返します。

typescript
const result = identity(value);

参照

identity(value)

受け取った値をそのまま返したい場合は identity を使用してください。主にデフォルト値やプレースホルダー関数として使用され、関数型プログラミングでよく使われます。

typescript
import { identity } from 'es-toolkit/compat';

// 基本的な使い方
console.log(identity(5)); // 5
console.log(identity('hello')); // 'hello'
console.log(identity({ key: 'value' })); // { key: 'value' }

// 配列の map と一緒に使用(値のコピー)
const numbers = [1, 2, 3, 4, 5];
const copied = numbers.map(identity);
console.log(copied); // [1, 2, 3, 4, 5]

// フィルタリングでデフォルト値として使用
const values = [1, 0, '', 'hello', null, undefined, false, true];
const filtered = values.filter(identity); // 真と評価される値だけを残す
console.log(filtered); // [1, 'hello', true]

// デフォルトの変換関数として使用
function processData(data, transform = identity) {
  return transform(data);
}

console.log(processData('hello')); // 'hello'
console.log(processData('hello', x => x.toUpperCase())); // 'HELLO'

ほとんどの場合、より簡単なアロー関数 x => x で置き換えることができます:

typescript
// identity の代わりにアロー関数を使用(推奨)
const copied = numbers.map(x => x);
const filtered = values.filter(x => x);

パラメータ

  • value (T): 返す値です。

戻り値

(T): 受け取った値をそのまま返します。

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