验证Node中的对象数组



我有一个像这样的数组

settings: [
{ key: 'maxImageSize', value: '512' },
{ key: 'maxFileSize', value: '2048' },
{ key: 'searchResultsLimit', value: '10' },
]

我想在将每个键保存到数据库之前验证它们的值。

:searchResultsLimit应大于1,但不能超过20。

我使用Objection.jsexpress-validator

谢谢。

这个函数根据数组是否有效返回一个布尔值。


function myValidate(settings) {
try {
settings.map((setting) => {
if (validator.toInt(setting.value) <= 1 || validator.toInt(setting.value) >= 20) {
console.log(setting.value);
throw new Error("Invalid");
}
});
} catch (e) {
console.log(e.message);
return false;
}
return true;
}

证明validator.js没有提供验证器来检查数字是否在范围内。详情请访问https://github.com/validatorjs/validator.js/issues/330。

如果您只想忽略无效的项,您可以使用filter方法来获取所需范围内的项。

相关内容

  • 没有找到相关文章

最新更新