【发布时间】:2011-07-12 14:58:05
【问题描述】:
我有一些看起来像这样的 JSON:
"groups": [
"group_id": "8",
"group_name": "Building",
"group_color": "00ff00"
},
{
"group_id": "3",
"group_name": "Building",
"group_color": "8000ff"
},
{
"group_id": "2",
"group_name": "Sidewalk",
"group_color": "ff0000"
},
{
"group_id": "6",
"group_name": "Parking Lot",
"group_color": "00ffff"
},
{
"group_id": "3",
"group_name": "Commons",
"group_color": "ff8000"
},
{
"group_id": "5",
"group_name": "Other",
"group_color": "ff00ff"
}
]
当找到一个字段时,它会翻转一个布尔标志。
例如
for (var c=0; c<json.groups.length; c++) {
inSearch = false;
if(json.groups.group_id.match(query)!=null){
inSearch = true;
}
}
但是,如果 query = Building 则返回两个结果,所以我要做的是将 query = Building&8 设置为仅返回第一个结果。
注意:查询也可以是一个正则表达式,我认为这是应该去的地方......
有什么想法吗?
编辑:有没有办法,比如说,将我的字符串分成几部分,然后根据该对象的两个不同部分匹配单个对象?那么根据 group_id 和 group_color 匹配第一个对象,还是根据 group_name 和 group_color 匹配?
【问题讨论】:
标签: javascript json search