下表列出了可以转换为十进制的输入类型:
下表列出了可以转换为long的输入类型:
| 输入类型 | 行为 |
|---|---|
| 布尔型 | 返回的NumberLong(0)
false。返回的NumberLong(1)
true。 |
| 双 | 返回截断值。 截断后的double值必须长时间处于最小值和最大值之间。 您不能转换其截断值小于最小长整型值或大于最大长整型值的双精度值。 |
| 小数 | 返回截断值。 截断的十进制值必须长时间落在最小值和最大值之间。 您不能转换截断值小于最小长整数值或大于最大长整数值的十进制值。 |
| 整数 | 返回整数值long。 |
| 长 | 没事 返回long值。 |
| 串 | 返回字符串的数值。 字符串值必须是基的10长(例如
您不能转换浮点数,十进制或非基数10的字符串值(例如 |
| 日期 | 将“日期”转换为自纪元以来的毫秒数。 |
下表列出了一些到长示例的转换:
| 例 | 结果 |
|---|---|
{ $toLong: true } |
NumberLong(“ 1”) |
{ $toLong: false } |
NumberLong(“ 0”) |
{ $toLong: 1.99999 } |
NumberLong(“ 1”) |
{ $toLong: NumberDecimal("5.5000") } |
数字长(“ 5”) |
{ $toLong: NumberDecimal("9223372036854775808.0") } |
错误 |
{ $toLong: NumberInt(8) } |
数字长(8) |
{ $toLong: ISODate("2018-03-26T04:38:28.044Z") } |
数字长(“ 1522039108044”) |
{ $toLong: "-2" } |
NumberLong(“-2”) |
{ $toLong: "2.5" } |
错误 |
{ $toLong: null } |
空值 |