Retrieve the number of elements in an array object.
Syntax
bool JS_GetArrayLength(JSContext *cx, JS::Handle<JSObject*> obj, uint32_t *lengthp);
Name | Type | Description |
---|---|---|
cx |
JSContext * |
The context in which to look up the array's length. Requires request. In a JS_THREADSAFE build, the caller must be in a request on this JSContext . |
obj |
JS::Handle<JSObject*> |
The object to examine. |
lengthp |
uint32_t * |
Out parameter. On success, *lengthp receives the length of the array. |
Description
JS_GetArrayLength
gets the .length
property of obj
as though by calling JS_GetProperty
and converts it to a 32-bit unsigned integer. If obj
is an array (see JS_IsArrayObject
), this is guaranteed to succeed, because the .length
property of an array is always a number and can't be deleted or redefined.
On success, JS_GetArrayLength
stores the length in *lengthp
and returns true
. On failure, it reports an error and returns false
, and the value left in *lengthp
is undefined.