Obsolete since JavaScript mozjs17
This feature is obsolete. Although it may still work in some browsers, its use is discouraged since it could be removed at any time. Try to avoid using it.
use JS_NumberValue
instead
Convert a C floating-point number of type jsdouble
to a jsval
.
Syntax
JSBool JS_NewNumberValue(JSContext *cx, jsdouble d, jsval *rval);
Name | Type | Description |
---|---|---|
cx |
JSContext * |
The context in which to create the new number. Requires request. In a JS_THREADSAFE build, the caller must be in a request on this JSContext . |
d |
jsdouble |
The numeric value to convert. |
rval |
jsval * |
Out parameter. On success, *rval receives a JavaScript number with the value d . |
Description
JS_NewNumberValue
converts a C floating-point number of type jsdouble
to jsval
, the type of JavaScript values.
The result is an integer jsval
if d
can be stored that way. Otherwise, a new floating-point jsval
is created.
Some space for the new value may be allocated from the JS garbage collection heap. In this case, the value is subject to garbage collection until you protect against it using a local root, an object property, or the JS_AddRoot
function. This can be avoided by using the address of a rooted variable as rval
.
On success, JS_NewNumberValue
stores a numeric jsval
in *rval
and returns JS_TRUE
. Otherwise it returns JS_FALSE
and the value left in *rval
is unspecified.