Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/412.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:对象数组上的数据验证_Javascript_Validation - Fatal编程技术网

Javascript:对象数组上的数据验证

Javascript:对象数组上的数据验证,javascript,validation,Javascript,Validation,我运行这个任务是为了教我的兄弟,他被要求创建一个Javascript简单程序来验证这些数据 [ {code: ‘10001’, amount: ‘’}, {code: ‘10002’, amount: ’50.00’}, {code: ‘’, amount: ’60.00’}, ] 我需要显示错误,如果有金额,代码不应为空。您可以使用: const数据=[ {代码:'1000',金额:'}, {代码:'10002',金额:'50.00'}, {代码:'',金

我运行这个任务是为了教我的兄弟,他被要求创建一个Javascript简单程序来验证这些数据

[
    {code: ‘10001’, amount: ‘’},
    {code: ‘10002’, amount: ’50.00’},
    {code: ‘’, amount: ’60.00’},
    
]
我需要显示错误,如果有金额,代码不应为空。

您可以使用:

const数据=[
{代码:'1000',金额:'},
{代码:'10002',金额:'50.00'},
{代码:'',金额:'60.00'},
];
const isInValid=data.some(e=>e.amount&&!e.code);

日志(“数据无效?”,isInValid)归功于@Majed Badawi,但带有固定的验证表达式

const数据=[
{代码:'1000',金额:'},//可以吗
{代码:'10002',金额:'50.00'},//绝对有效
{代码:'',金额:'60.00'},//无效
{代码:'',金额:'},//为空但仍然有效
];
const validFlags=data.map(e=>!e.amount | | e.code);
const isValid=validFlags.every(f=>f);
log(“每个记录的验证”,validFlags.map(布尔值));

console.log(“最终结果”,有效)我的意思是,如果你总是得到一个obj数组,为什么不使用Joi呢 您可以定义yow模式,并在其上设置每个道具的特征或需求

可能不正确<代码>e.代码和e.金额
表示*代码和金额都是必需的“。也许
!e、 金额| | e.code
?@VasilyLiaskovsky我想OP的意思是两者都是必需的
!e、 代码| |!e、 金额
e.code&&e.amount
完全相反。第二种可能在某种意义上是正确的,但绝对不是第一种。有了
一些
仍然不是correct@VasilyLiaskovsky感谢您强调验证误解,请随时建议对建议的解决方案进行编辑