mozilla
Your Search Results

    JS_HasProperty

    Determine whether a JavaScript object has a specified property.

    Syntax

    bool
    JS_HasProperty(JSContext *cx, JS::HandleObject obj, const char *name,
                   bool *foundp);
    
    bool
    JS_HasUCProperty(JSContext *cx, JS::HandleObject obj,
                     const char16_t *name, size_t namelen,
                     bool *vp);
    
    bool
    JS_HasPropertyById(JSContext *cx, JS::HandleObject obj, JS::HandleId id,
                       bool *foundp); // Added in SpiderMonkey 1.8.1
    
    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 const char16_t or JS::HandleId Name of the property to look up.
    namelen size_t (only in JS_HasUCProperty) The length of name in characters, or -1 to indicate that name is null-terminated.
    foundp bool * Non-null pointer to a variable of type bool. On success, JS_HasProperty stores true in this variable if obj has a property with the given name, and false if not.

    Description

    JS_HasProperty searches an object, obj, and its prototype chain, for a property with the specified name. It behaves like the JavaScript expression name in obj. JS_HasUCProperty is the corresponding Unicode API. JS_HasPropertyById is the same but takes a JS::HandleId for the property name.

    If the property exists, this function sets *foundp to true and returns true.

    If the object obj has no such property, the function sets *foundp to false and returns true (to indicate that no error occurred).

    If an error occurs during the search, the function returns false, and the value of *foundp is undefined.

    See Also

    Document Tags and Contributors

    Contributors to this page: fscholz, Jorend, arai
    Last updated by: arai,
    Hide Sidebar