[英]filtering JSON data by key name
我是angularJS的新手
我有這樣的JSON數據:
[
{
"REPORT_ID": "QDP56DSC4BK",
"REPORT_NAME": "non, lobortis quis, pede.",
"REPORT_STATUS": 1,
"REPORT_TYPE": "Duis Sit Amet Ltd",
"REPORT_DATE": "Sep 3, 2015",
"REPORT_INGREDIENT_1": "Prednisone",
"REPORT_INGREDIENT_2": "Alprazolam",
"REPORT_INGREDIENT_3": "Prednisone",
},
{
"REPORT_ID": "JQY45UOQ8PY",
"REPORT_NAME": "Cras dolor dolor, tempus",
"REPORT_STATUS": 4,
"REPORT_TYPE": "Sociis Incorporated",
"REPORT_DATE": "Apr 26, 2015",
"REPORT_INGREDIENT_1": "Clonazepam",
"REPORT_INGREDIENT_2": "Hydrocodone/APAP",
"REPORT_INGREDIENT_3": "Nuvaring",
},
{
"REPORT_ID": "EDE42OUH3FM",
"REPORT_NAME": "posuere cubilia Curae; Donec",
"REPORT_STATUS": 5,
"REPORT_TYPE": "Pede Inc.",
"REPORT_DATE": "May 22, 2015",
"REPORT_INGREDIENT_1": "Furosemide",
"REPORT_INGREDIENT_2": "Lipitor",
"REPORT_INGREDIENT_3": "Losartan Potassium",
},
{
"REPORT_ID": "BWQ55EIS6LS",
"REPORT_NAME": "enim. Nunc ut erat.",
"REPORT_STATUS": 1,
"REPORT_TYPE": "Orci Sem Institute",
"REPORT_DATE": "Dec 29, 2015",
"REPORT_INGREDIENT_1": "Alprazolam",
"REPORT_INGREDIENT_2": "Celebrex",
"REPORT_INGREDIENT_3": "Promethazine HCl",
}
]
如何過濾此數據並將所有“ REPORT_STATUS”數據存儲在單獨的數組中。
我的數組應包含:[“ REPORT_STATUS”:1,“ REPORT_STATUS”:4,4,“ REPORT_STATUS”:5,“ REPORT_STATUS”:1]
讓我們玩一些內置的功能 :
console.log(JSON.stringify(json, ['REPORT_STATUS']));
將產生
[{"REPORT_STATUS":1},{"REPORT_STATUS":4},{"REPORT_STATUS":5},{"REPORT_STATUS":1}]
var reportStatuses = [];
angular.forEach(myJson, function(jsonObj) {
reportStatuses.push(jsonObj.REPORT_STATUS);
});
這樣,您將擁有一個包含所有reportstatus的數組,如下所示:
[1,2,4,6,7]
不可能有一個包含鍵值對的數組,為此使用一個對象。
嘗試這個
values = your_json_array;
var status = [];
angular.forEach(values, function(value, key) {
this.push(value.REPORT_STATUS);
}, status);
REPORT_STATUS將在狀態變量中存儲輸出status = [1,4,5,1]
有關更多信息, 請參見https://docs.angularjs.org/api/ng/function/angular.forEach
單行版本
var reportStatusArray = yourJsonArray.map(function(r){ return r['REPORT_STATUS']; });
這會給你[1,2,3,4,5]
或者:
var reportStatusArray = yourJsonArray.map(function(r){ return {'REPORT_STATUS': r['REPORT_STATUS']}; });
會給您[{"REPORT_STATUS": 1},{"REPORT_STATUS": 2} ... ]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.