This article covers features introduced in SpiderMonkey 17
Find a specified property and retrieve its value.
Syntax
bool JS_ForwardGetPropertyTo(JSContext *cx, JS::HandleObject obj, JS::HandleId id, JS::HandleObject onBehalfOf, JS::MutableHandleValue vp); bool JS_ForwardGetElementTo(JSContext *cx, JS::HandleObject obj, uint32_t index, JS::HandleObject onBehalfOf, JS::MutableHandleValue vp);
Name | Type | Description |
---|---|---|
cx |
JSContext * |
A context. Requires request. In a JS_THREADSAFE build, the caller must be in a request on this JSContext . |
obj |
JS::HandleObject |
Object to search on for the property. |
id or index |
JS::HandleId or uint32_t |
Name or index of the property to look up. |
onBehalfOf |
JS::HandleObject |
Object to receive getter invocation. |
vp |
JS::MutableHandleValue |
Out parameter. On success, *vp receives the current value of the property, or undefined if no such property is found. |
Description
JS_ForwardGetPropertyTo
is the base implementation of JS_GetProperty
, JS_GetUCProperty
, JS_GetPropertyById
etc, where onBehalfOf
is same to obj
.
onBehalfOf
is Receiver
in [[Get]] internal method of Proxy
, defined in ES2015 draft spec (rev 29, 9.5.8).
On success, these functions set *vp
to the current value of the property, or undefined
if obj
has no such property, and return true
. On an error or exception, these functions return false
, and the value left in *vp
is undefined.