Entry: JS_DefineProperty (Function)
Summary: Creates a single property for a specified object.
Syntax:
JSBool) JS_DefineProperty(JSContext *cx, JSObject *obj,
const char *name, jsval value, JSPropertyOp getter,
JSPropertyOp setter, uintN flags);
Argument Type Description
cx JSContext * Pointer to a JS context from which to derive runtime information.
obj JSObject * Object for which to create the new property.
name const char * Name for the property to create.
value jsval Initial value to assign to the property.
getter JSPropertyOp getProperty method for retrieving the current property value.
setter JSPropertyOp setProperty method for specifying a new property value.
flags uintN Property flags.
Description:
JS_DefineProperty defines a single property in a specified object, obj.
name is the name to assign to the property in the object. value is a jsval that defines the property's data type and initial value. getter and setter identify the getProperty and setProperty methods for the property, respectively. If you pass null values for these entries, JS_DefineProperties assigns the default getProperty and setProperty methods to this property. flags contains the property flags to set for the newly created property. The following table lists possible values you can pass in flags, either singly, or OR'd together: TABLE BORDER="0" TRTD VALIGN='baseline' ALIGN='left' BFlag /B/TDTD VALIGN='baseline' ALIGN='left' BPurpose /B /TD/TRTR TD VALIGN='baseline' ALIGN='left'P CODEJSPROP_ENUMERATE/CODE/TDTD VALIGN='baseline' ALIGN='left'P Property is visible in Bfor/B and Bin/B loops./P /TD/TRTR TD VALIGN='baseline' ALIGN='left'P CODEJSPROP_READONLY/CODE/TDTD VALIGN='baseline' ALIGN='left'P Property is read only./P /TD/TRTR TD VALIGN='baseline' ALIGN='left'P CODEJSPROP_PERMANENT/CODE/TDTD VALIGN='baseline' ALIGN='left'P Property cannot be deleted./P /TD/TRTR TD VALIGN='baseline' ALIGN='left'P CODEJSPROP_EXPORTED/CODE/TDTD VALIGN='baseline' ALIGN='left'P Property can be imported by other objects./P /TD/TRTR TD VALIGN='baseline' ALIGN='left'P CODEJSPROP_INDEX/CODE/TDTD VALIGN='baseline' ALIGN='left'P Property is actually an index into an array of properties, and is cast to a CODEconst char */CODE./P /TD/TR/TABLE
If it successfully creates the property, JS_DefineProperty returns JS_TRUE. If the property already exists, or cannot be created, JS_DefineProperty returns JS_FALSE.
See also:
|
|
|