MDN wants to learn about developers like you:


JSEnumerateOp is the type of the JSClass.enumerate callback.


typedef bool
(* JSEnumerateOp)(JSContext *cx, JS::HandleObject obj);
Name Type Description
cx JSContext * Pointer to the JS context in which the enumeration is taking place.
obj JS::HandleObject Pointer to the object to be enumerated.


JSEnumerateOp is called just before an object is enumerated (via a statement, an array comprehension, or a call to JS_Enumerate). It should define any remaining lazy properties that should be enumerable but are not yet defined in obj. This hook does not implement iteration: once the properties are defined, the JavaScript engine can enumerate them.

JSClass hooks

JSClass offers following hook:

See Also

Document Tags and Contributors

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