我试图通过一个对象,和一些属性,我有有限数量的值,他们可以分配给。下面是我目前检查它们价值的方法:
for (const [attribute, value] of Object.entries(params.object)) {
if(attribute == "accountType")
if(value != "external" && value != "internal")
return { status: `Failed! '${attribute}' must only equal to 'internal' or 'external'` };
else if(attribute == "dnsName")
if(value.match('^[a-z]*-[0-9]*$') == null)
return { status: `Failed! '${attribute}' must follow the pattern [a-z]*-[0-9]*` };
else if(attribute == "edition")
if(value != "starter" && value != "basic" && value != "classic")
return { status: `Failed! '${attribute}' must only equal to 'starter', 'basic' or 'classic'` };
else if(attribute == "forceProvision" || attribute == "installSoltions")
if (typeof value !== "boolean")
return { status: `Failed! '${attribute}' must be of type boolean true/false` };
}
有没有办法对此进行优化?
对于不需要模式匹配的简单情况,可以指定format对象并执行以下操作:
// the arrays represent the possible values an object respecting this format can take.
let format = {
greeting: ['hello', 'goodbye'],
direction: ['right', 'left']
}
// here's a test object that does not respect said format.
let a = {
greeting: 'hello',
direction: 'not a desirable value'
};
for(const [attribute, value] of Object.entries(a)) {
// - 1 on indexOf means not present in array. Here we check that the
// value of the attribute respects the format.
if(format[attribute].indexOf(value) == -1) {
console.log(`Incorrect format for ${attribute}, expected ${format[attribute]}`);
} else {
// saul'goodman
console.log(`${attribute} correctly formatted.`);
}
}
希望这能帮你解决问题。
我需要获得的模块,与那些张贴的地方等于“维也纳”,我无法消除那些没有通过验证。 这是JSON。 预期结果 这就是我正在尝试的 实际结果 我无法删除那些不符合条件的帖子。
问题内容: 当我想更改所选选项时,我的反应有问题。问题在于该值是一个对象,我无法在选项值属性中传递它。 请参见以下代码: 与 我需要使用所选选项的值更改组件的状态。状态改变时我得到什么。我想发生这种情况是因为react无法将javascript对象嵌入最终视图的属性中。我是正确的? 而且,我在构造函数中将state 设置为null是否有正确的方法? 问题答案: 您可以利用的 此外,我在构造函数中将
我是Elasticsearch的新手,我试图创建一个过滤器来检索具有特定属性的文档。 属性在映射中定义为嵌套对象,如下所示: 我试图以以下形式执行一个复杂的查询: 这是elasticsearch 2.x。我做错了什么?
我希望能够过滤评论,所以只有真正的评论将为每个博客对象显示。我想展示每一个博客,而不仅仅是那些有真实评论的博客。我在网上找到的所有其他解决方案似乎都影响了我的博客对象。有没有一种方法可以过滤掉评论对象而不影响所有博客的查询? 因此,上述示例将在查询之后返回: 该示例仍然显示了没有评论或错误评论的博客。 这可能吗? 我一直在使用这个示例中的嵌套查询:ElasticSearch-Get只匹配嵌套对象与
所以我使用redux和useSelector钩子从Store获取数据。 我可以在一个reducer数组中过滤特定的数据,这样组件只在过滤的数据发生变化时才更新,例如: 然而,当我尝试对一个对象进行相同的操作时,即使存储区没有改变,组件也总是重新呈现。例如: 为什么会发生这种情况,以及如何在数据发生变化时才进行更新?我假设将一些深入的比较函数传递给useSelector?
我如何过滤对象数组,以移除那些没有最大年龄值的对象。