我有以下形式的对象数组:
jsonParseEntityVariables = [
{"id":0, "text": []},
{"id":1, "text": []},
{"id":2, "text": []}
];
我还有一个名为entity_variables.currentId
的var,我在其中存储了一个ID
如何将所有jsonParseEntityVariables.id
与entity_variables.currentId
进行比较,以确定entity_variables.currentId
与jsonParseEntityVariables.id
完全不相同?
答案 0 :(得分:0)
您可以使用Array#every
。如果json中的ids
都不等于给定值,则它将返回true
。
var jsonParseEntityVariables = [{"id":0, "text": []},{"id":1, "text": []},{"id":2, "text": []}],
currentId = 4;
console.log(jsonParseEntityVariables.every(v => v.id != currentId));
或Array#some
,如果没有相等的值,则返回false
。如果有一个匹配的元素,它将返回true
。
var jsonParseEntityVariables = [{"id":0, "text": []},{"id":1, "text": []},{"id":2, "text": []}],
currentId = 4;
console.log(jsonParseEntityVariables.some(v => v.id == currentId));
答案 1 :(得分:0)
你拥有的是一系列物体。您可以随时检查id
值是entity_variables.currentId
值,还是“{3}}”{/ 1>}
if (jsonParseEntitiesVariables.some(function(e) { return e.id === entity_variables.currentId;})) {
// At least one matched
} else {
// None matched
}
或使用ES2015 +箭头功能:
if (jsonParseEntitiesVariables.some(e => e.id === entity_variables.currentId)) {
// At least one matched
} else {
// None matched
}
如果您想知道哪个条目匹配,Array#some
或Array#find
将是您正在寻找的内容:
var match = jsonParseEntitiesVariables.find(e => e.id === entity_variables.currentId);
if (match) {
// Found it, `match` contains it
} else {
// Not found
}
findIndex
的工作方式相同,但会返回找到的条目的索引(如果找不到则返回-1)。
答案 2 :(得分:0)
var jsonParseEntityVariables = [{" id":0," text":[]},{" id":1," text&# 34;:[]},{" id":2," text":[]}], currentId = 1; console.log(jsonParseEntityVariables.every(jsonParseEntityVariables => jsonParseEntityVariables.id!= currentId));
答案 3 :(得分:0)
此代码检查您的ID的重复ID-s。
var id_duplicate = false;
for (i in jsonParseEntityVariables){
if (jsonParseEntityVariables[i].id === entity_variables.currentId){
id_duplicate = true;
break;
}
}
请注意!您的jsonParseEntityVariables
是一个数字。确保entity_variables.currentId
也是一个数字。