Skip to content
← Back to rules

unicorn/prefer-object-from-entries スタイル

An auto-fix is available for this rule.

何をするか

キーと値のペアの配列をオブジェクトに変換する場合に、Object.fromEntries を使用することを推奨します。

なぜ問題なのか

reduceforEach を使ってキーと値のペアからオブジェクトを手動で構築するのは、より冗長で、エラーが発生しやすく、理解しにくいです。Object.fromEntries メソッドは、この目的に特化しており、より明確で宣言的なコードになります。

このルールに違反する 不正な 例:

js
const result = pairs.reduce((obj, [key, value]) => {
  obj[key] = value;
  return obj;
}, {});

const result = {};
pairs.forEach(([key, value]) => {
  result[key] = value;
});

このルールに準拠する 正しい 例:

js
const result = Object.fromEntries(pairs);

設定

このルールは、以下のプロパティを持つ設定オブジェクトを受け入れます。

functions

type: string[]

default: ["_.fromPairs", "lodash.fromPairs"]

Object.fromEntries と同等と見なす追加の関数。

使用方法

設定ファイルまたは CLI でこのルールを 有効化 するには、次のようにします:

json
{
  "rules": {
    "unicorn/prefer-object-from-entries": "error"
  }
}
bash
oxlint --deny unicorn/prefer-object-from-entries

参照