This is an archived page. It's not actively maintained.


Create a formatted error or warning message to pass to a user-defined error reporting function. This function can also raise a JavaScript exception which a currently executing script can catch.


JS_ReportError(JSContext *cx, const char *format, ...);

JS_ReportWarning(JSContext *cx, const char *format, ...);
Name Type Description
cx JSContext * Pointer to a JS context from which to derive runtime information. Requires request. In a JS_THREADSAFE build, the caller must be in a request on this JSContext.
format const char * Format string to convert into an error message using JS_vsmprintf.
... ... Error message variables to insert into the format string.


JS_ReportError is the simplest JSAPI function for reporting errors. First it builds an error message from the given sprintf-style format string and any additional arguments passed after it. The resulting error message is passed to the context's JSErrorReporter callback, if any.

If the caller is in a JSAPI callback, JS_ReportError also creates a new JavaScript Error object and sets it to be the pending exception on cx. The callback must then return JS_FALSE to cause the exception to be propagated to the calling script.

An example is shown in the JSAPI Phrasebook.

For internationalization, use JS_ReportErrorNumber instead. To report an out-of-memory error, use JS_ReportOutOfMemory.

See Also