A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Reflect/has below:

Reflect.has() - JavaScript | MDN

Reflect.has()

Baseline Widely available

静的な Reflect.has() メソッドは、機能としては in 演算子のように動作します。

試してみましょう
const object1 = {
  property1: 42,
};

console.log(Reflect.has(object1, "property1"));
// Expected output: true

console.log(Reflect.has(object1, "property2"));
// Expected output: false

console.log(Reflect.has(object1, "toString"));
// Expected output: true
構文
Reflect.has(target, propertyKey)
引数
target

プロパティを探す対象のオブジェクト。

propertyKey

チェックするプロパティ名。

返値

対象がプロパティを持つかどうかを示す Boolean 値。

例外

target が Object でなかった場合、 TypeError が発生します。

解説

Reflect.has メソッドは、オブジェクトプロパティがあるかをチェックします。機能としては in 演算子のように動作します。

例 Reflect.has() の使用
Reflect.has({ x: 0 }, "x"); // true
Reflect.has({ x: 0 }, "y"); // false

// プロトタイプチェーンのプロパティがあるため、true が返る
Reflect.has({ x: 0 }, "toString");

// Proxy with .has() handler method
obj = new Proxy(
  {},
  {
    has(t, k) {
      return k.startsWith("door");
    },
  },
);
Reflect.has(obj, "doorbell"); // true
Reflect.has(obj, "dormitory"); // false

Reflect.has は継承されたプロパティについて true を返し、これは in 演算子と同様です。

const a = { foo: 123 };
const b = { __proto__: a };
const c = { __proto__: b };
// The prototype chain is: c -> b -> a
Reflect.has(c, "foo"); // true
仕様書 ブラウザーの互換性 関連情報

RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4