我有一个数组,其中包含所有可能的输入值。现在,我想根据我拥有的数组来验证输入。如果数组中没有所有输入键,则应该抛出错误;如果数组中没有所有输入键,则应打印OK。我可以接受任何nodejs或python运行时。请建议我一种更好的方法,因为我不想使用诸如foreach之类的方法来迭代所有元素。预先感谢。
1-
array = [a,b,c,d];
inputJson = {a:1,z:2}
如果是上述情况,则应打印一些错误。
2-
array = [a,b,c,d];
inputJson = {a:1,b:2}
在这种情况下,它应该打印确定。
答案 0 :(得分:1)
在python中使用springfox
例如:
$variable
all
答案 1 :(得分:0)
在python中,您可以在其他可迭代对象上使用set.intersection
:
>>> l = ['a','b','c','d']
>>> inputJson = {'a':1,'b':2}
>>> set(inputJson.keys()).intersection(l)
{'a', 'b'}
>>> set(l).intersection(inputJson.keys())
{'a', 'b'}
答案 2 :(得分:0)
Node.js中的解决方案。希望对您有帮助。
function validate(){
var array = [a,b,c,d];
var inputJson = {a:1,z:2}
for(key in inputJson){
if(array.indexOf(key) === -1){
return 'ERROR'
}
}
return 'OK'
}
答案 3 :(得分:0)
var array = ['a','b'];
var inputJson = {a:1,z:2};
const ok = ! Object.keys(inputJson).find(key => !array.includes(key));