Baseline Widely available
Die statische Methode Reflect.get()
ähnelt der Eigenschafts-Accessor Syntax, funktioniert jedoch als Funktion.
const object = {
x: 1,
y: 2,
};
console.log(Reflect.get(object, "x"));
// Expected output: 1
const array = ["zero", "one"];
console.log(Reflect.get(array, 1));
// Expected output: "one"
Syntax
Reflect.get(target, propertyKey)
Reflect.get(target, propertyKey, receiver)
Parameter
target
Das Zielobjekt, bei dem die Eigenschaft abgerufen werden soll.
propertyKey
Der Name der Eigenschaft, die abgerufen werden soll.
receiver
Optional
Der Wert von this
, der für den Aufruf von target
bereitgestellt wird, wenn ein Getter aufgerufen wird.
Der Wert der Eigenschaft.
AusnahmenTypeError
Wird ausgelöst, wenn target
kein Objekt ist.
Reflect.get()
bietet die reflektierende Semantik eines Eigenschaftszugriffs. Das heiÃt, Reflect.get(target, propertyKey, receiver)
ist semantisch äquivalent zu:
Beachten Sie, dass bei einem normalen Eigenschaftszugriff target
und receiver
in der Regel dasselbe Objekt wären.
Reflect.get()
ruft die [[Get]]
interne Objektroutine von target
auf.
// Object
const obj1 = { x: 1, y: 2 };
Reflect.get(obj1, "x"); // 1
// Array
Reflect.get(["zero", "one"], 1); // "one"
// Proxy with a get handler
const obj2 = new Proxy(
{ p: 1 },
{
get(t, k, r) {
return `${k}bar`;
},
},
);
Reflect.get(obj2, "foo"); // "foobar"
// Proxy with get handler and receiver
const obj3 = new Proxy(
{ p: 1, foo: 2 },
{
get(t, prop, receiver) {
return `${receiver[prop]}bar`;
},
},
);
Reflect.get(obj3, "foo", { foo: 3 }); // "3bar"
Spezifikationen Browser-Kompatibilität Siehe auch
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