Javascript数组验证
我有两个数组,一个是普通字符串数组,另一个是对象数组,如下所示:Javascript数组验证,javascript,arrays,Javascript,Arrays,我有两个数组,一个是普通字符串数组,另一个是对象数组,如下所示: listOfObjects[ { "name": "A", "data": "[{'value1':'1','value2':'2'}]" }, { "name": "B", "data": "[{'value1':'','value2':''}]" } ] stringArray["A","B","C"] 如何比较这两个数组并返回ListOfObject中不存在的stringArray。例如,它将返回“C”,因为它不存
listOfObjects[
{ "name": "A", "data": "[{'value1':'1','value2':'2'}]" },
{ "name": "B", "data": "[{'value1':'','value2':''}]" }
]
stringArray["A","B","C"]
如何比较这两个数组并返回ListOfObject中不存在的stringArray。例如,它将返回“C”,因为它不存在于ListofObject中
此外,如果data.value1或data.value2为空,我还希望它检查ListoObject并返回名称。例如,返回“B”。以获取
stringArray
中不存在的值,您可以使用array#find
遍历每个值,并使用array#find
检查它是否存在于对象列表中
var-listOfObjects=[{“name”:“A”,“data”:“[{'value1':'1','value2':'2'}]”,{“name”:“B”,“data”:“[{'value1':'','value2':''}],
stringArray=[“A”、“B”、“C”],
结果=stringArray.find(word=>!ListoObjects.find({name}=>name==word));
控制台日志(结果)代码>它将如何返回“B”和“C”?@Amberberival ListoObjects.data为空或ListoObjects.data==”中的值,现在已清除?它不应该只返回“C”,因为不满足第一个条件。