Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/448.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/firebase/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Web Firestore-将双倍值保存到Firebase_Javascript_Firebase_Google Cloud Firestore_Double - Fatal编程技术网

Javascript Web Firestore-将双倍值保存到Firebase

Javascript Web Firestore-将双倍值保存到Firebase,javascript,firebase,google-cloud-firestore,double,Javascript,Firebase,Google Cloud Firestore,Double,我目前正在尝试在Firebase(云Firestore)上保存值 我的问题很简单:我想保存两个值,但当一个数字像113而不是145.3时,该值会自动保存为Long 这是一个问题,因为我的Android应用程序因此崩溃,同时处理双倍和长的值是一团乱 我试过: parseFloat(15) 这是不工作的,如果我做一个console.log(值),我得到了15(不是两倍) 猜) 我也试过: var number = 15; var doubleValue = number.toFixed(2);

我目前正在尝试在Firebase(云Firestore)上保存值

我的问题很简单:我想保存两个值,但当一个数字像113而不是145.3时,该值会自动保存为Long

这是一个问题,因为我的Android应用程序因此崩溃,同时处理双倍和长的值是一团乱

我试过:

parseFloat(15)
这是不工作的,如果我做一个console.log(值),我得到了15(不是两倍) 猜)

我也试过:

var number = 15;
var doubleValue = number.toFixed(2);
这不起作用,值保存在字符串中


在web上处理此问题似乎比在iOS或Android上要复杂得多。

根据有关的官方文档,有两种数字数据类型:

浮点数:64位双精度,IEEE 754

整数:64位,带符号

以及您的问题的解决方案:

我的问题很简单:我想保存两个值,但是当一个数字像113而不是145.3时,这个值会自动保存为Long

如果要将
113
另存为double,则将其另存为
113.3
而不是简单地另存为
113
,因为Firestore会看到
113
是一个简单的
整数类型的数字,它会相应地保存它。始终根据需要的数据类型保存数据

编辑:

无论是添加
113
还是
113.0
,该值都会作为
113
保存在数据库中。如果您想将其作为
113.0
获取,则必须将其作为
double
获取。在Android中,您可以使用以下代码行:

double doubleValue = document.getDouble("myDoubleProperty");

即使
mydouble属性
包含
113
的整数值,也可以将其保存到double中。一个double也可以保存一个整数,而一个整数如果没有特定的强制转换就永远不能保存一个double。

对不起,我不清楚。如果我必须保存一个像113这样的值,我想将它保存为113.0(我不知道如何正确地执行)。哦,我现在明白了。请看我的最新答案。所以不能从网络上将113保存为双倍值?对于meNo来说,这会容易得多,
113
将作为一个整数保存在数据库中,但您必须将其作为一个double来读取。