Какова реализация по умолчанию JSObjectGetPropertyCallback?

Я строю JSObjectRef со статическими функциями и переменными свойств, но я обнаружил, что если я определю класс следующим образом:

    static JSStaticFunction myStaticFunctions[] = {
        { "myStFunc", JSAction::jsMyStFunc, kJSPropertyAttributeNone },
        { 0, 0, 0 }
    };
    JSClassDefinition classDef = kJSClassDefinitionEmpty;
    classDef.staticFunctions = myStaticFunctions;
    classDef.getProperty = jsPropertyGet;
    jsclass = JSClassCreate(&classDef);
    proto = JSObjectMake(cx, jsclass, NULL);

И когда я вызываю статическую функцию (myStFunc) в javascript, также вызывается обратный вызов getProperty (jsPropertyGet), но я не знаю, как вернуть действие по умолчанию.

1 ответ

Решение

Хорошо, я понял.

для JSObjectGetPropertyCallback, возврат NULL получит запрос на его статические свойства, затем цепочку родительских классов и цепочку прототипов.

для JSObjectSetPropertyCallback, возврат false если вы не хотите обрабатывать это самостоятельно.

Другие вопросы по тегам