Search code examples
javascriptspidermonkeyaccessor

How do I get the value of a JSObject property from C?


In SpiderMonkey, how do I get the value of a property of a JSObject from within my C code?

static JSBool
JSD_getter(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval)
{
    jsval js_id;
    JS_GetProperty(cx, obj, "id", &js_id); // js_id has JavaScript type
    int c_id;
    JS_ValueToInt32(cx, js_id, &c_id); // Now, c_id contains the actual value
}                                      // of obj.id, as a C native type

Solution

  • JS_GetProperty()