Obsolete since JSAPI 17
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.
Create a floating-point jsval
Syntax
JSBool JS_NewDoubleValue(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_THREADSAFEbuild, the caller must be in a request on thisJSContext. | 
| d | jsdouble | The numeric value to convert. This must not be a value that could fit in an integer jsval(seeINT_FITS_IN_JSVAL). | 
| rval | jsval * | Out parameter. On success, *rvalreceives a JavaScript number with the valued. | 
Description
JS_NewDoubleValue creates a floating-point jsval.
Warning: The argument d must not be a value that could fit in an integer jsval. If it is, JS_NewDoubleValue creates a bad jsval that might behave as desired in some cases but not others.
The result 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_NewDoubleValue stores a numeric jsval in *rval and returns JS_TRUE. Otherwise it returns JS_FALSE and the value left in *rval is unspecified.