(標準組み込みオブジェクト)
https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Reflect
Reflect は、JavaScript 操作を受け付けるためのメソッドを提供する組み込みオブジェクトである。メソッドはプロキシーハンドラーのメソッドと同じ。Reflect は関数オブジェクトではないので、構築することはできない。
他の多くのグローバルオブジェクトとは異なり、Reflect はコンストラクターでない。new 演算子で使用したり、 Reflect オブジェクトを関数として呼び出したりすることはできない。 Reflect のすべてのプロパティとメソッドは(Math オブジェクトと同様に)静的である。
- Reflect.defineProperty(target, propertyKey, attributes)
Object.defineProperty() と同様。返値は論理値で、プロパティが定義できた場合は true を返す。 - Reflect.deleteProperty(target, propertyKey)
関数としての delete 演算子。 delete target[propertyKey] を呼び出すのと等価である。 - Reflect.get(target, propertyKey[, receiver])
このプロパティの値を返す。オブジェクトからのプロパティの取得 (target[propertyKey]) を関数にしたようなもの。 - Reflect.apply(target, thisArgument, argumentsList)
target 関数を、引数 argumentsList で指定された引数で呼び出す。 - Reflect.has(target, propertyKey)
オブジェクトプロパティがあるかをチェックする。機能としては in 演算子のように動作する。