This article needs a technical review. How you can help.

This article covers features introduced in SpiderMonkey 17

Find a specified property and retrieve its value.


JS_ForwardGetPropertyTo(JSContext *cx, JS::HandleObject obj, JS::HandleId id,
                        JS::HandleObject onBehalfOf, JS::MutableHandleValue vp);

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.


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 ES6 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.

See Also

Document Tags and Contributors

 Contributors to this page: kscarfone, arai
 Last updated by: kscarfone,