用javascript解析json

用javascript解析json,javascript,json,angularjs,Javascript,Json,Angularjs,我有一个json文件,我想在javascript中解析并获取test1的subcat值作为数组。有没有一个简单的方法可以做到这一点?我已经使用AngularJS$http来获取json 对于输入: [ { "category":"test1", "ID":"1", "subcat":[ { "completed":"4", "uncompleted":"5" } ] },{

我有一个json文件,我想在javascript中解析并获取
test1
subcat
值作为数组。有没有一个简单的方法可以做到这一点?我已经使用AngularJS
$http
来获取json

对于输入:

[
   {
    "category":"test1",
    "ID":"1",
      "subcat":[
        {
         "completed":"4",
         "uncompleted":"5"
        }
     ]
   },{
    "category":"test2",
    "ID":"2"
    "subcat":[
        {
         "completed":"1",
         "uncompleted":"5"
        }
   }

]

预期结果是
[4,5]

您可以使用lodash,方法是查找:

试试这个

     <script type="text/javascript">
      var newarray=new Array();
var test='[{"category":"test1","ID":"1","subcat":[{"completed":"4","uncompleted":"5"}]},{"category":"test2","ID":"2","subcat":[{"completed":"1","uncompleted":"5"}]}]';

var tags = JSON.parse(test);

for(i=0;i<tags.length;i++)
{

if(tags[i]['category']=='test1')
{
var subcat=tags[i]['subcat'];
for(j=0;j<subcat.length;j++)
{
newarray.push(subcat[j]['completed']);
newarray.push(subcat[j]['uncompleted']);
}

}
}
console.log(newarray);
      </script>

var newarray=newarray();
var test='[{“category”:“test1”,“ID”:“1”,“subcat”:[{“completed”:“4”,“uncompleted”:“5”}],{“category”:“test2”,“ID”:“2”,“subcat”:[{“completed”:“1”,“uncompleted”:“5”}];
var tags=JSON.parse(test);

对于(i=0;i可能是我发布的答案的副本)请检查并让我知道
Corrected Array 


 [
       {
         "category":"test1",
          "subcat":[
                    {
                      "completed":"4",
                      "uncompleted":"5"
                     }
                   ]
       },
       {
          "category":"test2",
          "subcat":[
                    {
                      "completed":"1",
                      "uncompleted":"5"
                    }
                   ]
         }
    ]
var JsonArray=[
                {
                  "category":"test1",
                  "subcat":[{"completed":"4","uncompleted":"5"}]}, 
                {
                  "category":"test2",
                  "subcat":[{"completed":"1","uncompleted":"5"}]
                }
              ];
for(var i=0;i<JsonArray.length;i++)
      {
          if(JsonArray[i].category=="test1")
            var Res=JsonArray[i].subcat;
      }
var finalRes=[];
finalRes.push(Res[0].completed);
finalRes.push(Res[0].uncompleted);
     <script type="text/javascript">
      var newarray=new Array();
var test='[{"category":"test1","ID":"1","subcat":[{"completed":"4","uncompleted":"5"}]},{"category":"test2","ID":"2","subcat":[{"completed":"1","uncompleted":"5"}]}]';

var tags = JSON.parse(test);

for(i=0;i<tags.length;i++)
{

if(tags[i]['category']=='test1')
{
var subcat=tags[i]['subcat'];
for(j=0;j<subcat.length;j++)
{
newarray.push(subcat[j]['completed']);
newarray.push(subcat[j]['uncompleted']);
}

}
}
console.log(newarray);
      </script>