Javascript 数组中的Json查找

Javascript 数组中的Json查找,javascript,json,parsing,find,Javascript,Json,Parsing,Find,我有一个json: { "response":{ "name":"Demo Shop", "items":[ { "id":3, "name":"first", "cost":10, "description":"First description" }, { "id":2, "name":

我有一个json:

{
"response":{
    "name":"Demo Shop",
    "items":[
        {
            "id":3,
            "name":"first",
            "cost":10,
            "description":"First description"
        },
        {
            "id":2,
            "name":"second",
            "cost":50,
            "description":"second description"
        }
    ],
    "coupon":false
}
}

我需要解析此json并按id获取产品描述。

使用
过滤器尝试类似的操作:

var json={
“答复”:{
“名称”:“演示店”,
“项目”:[
{
“id”:3,
“名称”:“第一”,
“成本”:10,
“描述”:“第一个描述”
},
{
“id”:2,
“名称”:“第二个”,
“成本”:50,
“描述”:“第二描述”
}
],
“息票”:虚假
}
}
var result=json.response.items.filter(函数(项){
return item.id==3;//将3更改为要搜索的内容
});
如果(result.length>0){
console.log(结果[0]。说明);

}
使用
json.parse()解析json后,可以使用find方法查找具有匹配id的对象,如果找到了对象,则可以获取其描述

var json='{“response”:{“name”:“Demo Shop”,“items”:[{“id”:3,“name”:“first”,“cost”:10,“description”:“first description”}、{“id”:2,“name”:“second”,“cost”:50,“description”:“second description”}、“coupon”:false}
var desc=JSON.parse(JSON).response.items.find(函数(e){
返回e.id==3
})
如果(描述){
console.log(desc.description)
}
var json=[{“名称”:“联想Thinkpad 41A4298”,“网站”:“谷歌”},
{“名称”:“联想Thinkpad 41A2222”,“网站”:“谷歌”},
{“名称”:“联想Thinkpad 41Awww33”,“网站”:“雅虎”},
{“名称”:“联想Thinkpad 41A424448”,“网站”:“谷歌”},
{“名称”:“联想Thinkpad 41A429rr8”,“网站”:“易趣”},
{“名称”:“联想Thinkpad 41A429ff8”,“网站”:“易趣”},
{“名称”:“联想Thinkpad 41A429ss8”,“网站”:“rediff”},
{“名称”:“联想Thinkpad 41A429sg8”,“网站”:“雅虎”}];
var as=$(json).filter(函数(i,n){return n.website==='yahoo'});

对于(var i=0;i

你可以使用过滤方法,真的,你的学校老师在作业中给了你这个。
var json=[{"name":"Lenovo Thinkpad 41A4298","website":"google"},
{"name":"Lenovo Thinkpad 41A2222","website":"google"},
{"name":"Lenovo Thinkpad 41Awww33","website":"yahoo"},
{"name":"Lenovo Thinkpad 41A424448","website":"google"},
{"name":"Lenovo Thinkpad 41A429rr8","website":"ebay"},
{"name":"Lenovo Thinkpad 41A429ff8","website":"ebay"},
{"name":"Lenovo Thinkpad 41A429ss8","website":"rediff"},
{"name":"Lenovo Thinkpad 41A429sg8","website":"yahoo"}];


 var as=$(json).filter(function (i,n){return n.website==='yahoo'});



for (var i=0;i<as.length;i++)
  {
    alert(as[i].name +"         "+as[i].website)
}