User Guide
544 C-Level Extensibility
Arguments
unsigned short *name, JSNative call, unsigned int nargs
■ The name argument is the name of the function as it is exposed to JavaScript.
■ The call argument is a pointer to a C-level function. The function must return a JSBool,
which indicates success or failure.
■ The nargs argument is the number of arguments that the function expects to receive.
Returns
A Boolean value: JS_TRUE indicates success; JS_FALSE indicates failure.
unsigned short *JS_ValueToString()
Usage
unsigned short *JS_ValueToString(JSContext *cx, jsval v,
unsigned int *pLength)
Description
Method; extracts a function argument from a jsval structure, converts it to a string, if
possible, and passes the converted value back to the caller.
Arguments
JSContext *cx, jsval v, unsigned int *pLength
■ The cx argument is the opaque JSContext pointer that passes to the JavaScript function.
■ The v argument is the jsval structure from which the string is to be extracted.
■ The pLength argument is a pointer to an unsigned integer. This function sets *plength
equal to the length of the string in bytes.
Returns
A pointer that points to a null-terminated string if successful or to a null value on failure.
The calling routine must not free this string when it finishes.
NOTE
Do not modify the returned buffer pointer or you might corrupt the data structures of the
JavaScript interpreter. To change the string, you must copy the characters into another
buffer and create a new JavaScript string.