使用Joi node.js验证不接受小数

时间:2018-03-21 06:57:03

标签: node.js express joi

我已经使用joi添加了一些参数的验证,我需要验证点参数以接受小数。

这是我的验证码

const userSchema = Joi.object({
point: Joi.number().max(150).required(),
});

在上面的代码中,我想接受数字在数字位置的十进制数。任何人都知道编写代码接受小数。

1 个答案:

答案 0 :(得分:0)

从Joi long time ago中删除了对验证浮点数的支持,因为它本身就没用了。

JavaScript中的数字始终存储为双精度浮点数,因此无论有效负载是否包含22.0000000,在将值赋给变量时,JavaScript都会看到相同的内容。 / p>

Joi有一个precision()方法,您可以使用它来指定允许或不会有用的最大小数位数。

无论出于何种原因,您特别需要浮点数,您需要使用.extend()创建自己的自定义验证,或者接受有效负载中的整数并执行某种投射服务器端。

相关问题