下表列出了可以转换为双精度型的输入类型:
输入类型 | 行为 |
---|---|
布尔型 | 返回
0 的 false 。返回
1 的true 。 |
双 | 没事 返回双精度型。 |
小数 | 以双精度值返回十进制值。 十进制值必须在两倍的最小值和最大值之内。 您不能转换一个小于最小双精度值或大于最大双精度值的十进制值。 |
整数 | 以双精度值返回int值。 |
长 | 将long值作为双精度值返回。 |
串 | 以双精度值形式返回字符串的数值。 字符串值必须是基的10数字值(例如
您不能转换非以10为底的
数字的字符串值(例如 |
日期 | 返回自与日期值对应的纪元以来的毫秒数。 |
下表列出了一些转换为双重示例的示例:
例 | 结果 |
---|---|
$toDouble: true |
1个 |
$toDouble: false |
0 |
$toDouble: 2.5 |
2.5 |
$toDouble: NumberInt(5) |
5 |
$toDouble: NumberLong(10000) |
10000 |
$toDouble: "-5.5" |
-5.5 |
$toDouble: ISODate("2018-03-27T05:04:47.890Z") |
1522127087890 |