Obsolete since JSAPI 26
This feature is obsolete. Although it may still work in some browsers, its use is discouraged since it could be removed at any time. Try to avoid using it.

This article covers features introduced in SpiderMonkey 1.8.5

Finds a specified property and retrieves its value or provided default value.


JS_GetPropertyDefault(JSContext *cx, JSObject *obj, const char *name, jsval def,
                      JS::MutableHandle<JS::Value> vp);

JS_GetPropertyByIdDefault(JSContext *cx, JSObject *obj, jsid id, jsval def,
                          JS::MutableHandle<JS::Value> 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.
name or id const char * or JS::HandleId Name of the property to look up.
def JS::HandleValue Default value if the property is not found.
vp JS::MutableHandleValue Out parameter. On success, *vp receives the current value of the property, or undefined if no such property is found.


JS_GetPropertyDefault examines a specified JS object obj and its prototype chain for a property with the specified name.

On success, these functions set *vp to the current value of the property, or def 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