Skip to content
← Back to rules

unicorn/no-array-method-this-argument スタイル

An auto-fix is available for this rule.

何をするか

mapfiltersomeevery などの配列反復メソッドにおける thisArg パラメータの使用を禁止します。

なぜ問題なのか

thisArg パラメータはコードの理解や推論を難しくします。代わりに、アロー関数を使用するか、明示的に束縛するより明確な方法を選びましょう。アロー関数は静的スコープから this を継承するため、直感的であり、エラーの発生リスクも低くなります。

このルールに違反する不適切なコード例

js
array.map(function (x) {
  return x + this.y;
}, this);
array.filter(function (x) {
  return x !== this.value;
}, this);

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

js
array.map((x) => x + this.y);
array.filter((x) => x !== this.value);
const self = this;
array.map(function (x) {
  return x + self.y;
});

使い方

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

json
{
  "rules": {
    "unicorn/no-array-method-this-argument": "error"
  }
}
bash
oxlint --deny unicorn/no-array-method-this-argument

参照