我应如何验证对象2中存在的对象1中的键?

时间:2019-04-30 07:03:10

标签: javascript node.js json python-3.x validation

我有一个数组,其中包含所有可能的输入值。现在,我想根据我拥有的数组来验证输入。如果数组中没有所有输入键,则应该抛出错误;如果数组中没有所有输入键,则应打印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}

在这种情况下,它应该打印确定

4 个答案:

答案 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));