如何根据JavaScript中的其他数据值获取JSON数据

时间:2016-05-22 08:01:28

标签: javascript json protractor

我的Json是这样的:

[    
 {"isoCode":"BW","name":"Botswana ","CashOut":"Y","BankOut":"","MMT":null},
 {"isoCode":"BR","name":"Brazil ","CashOut":"Y","BankOut":"Y","MMT":null},
 {"isoCode":"BG","name":"Bulgaria ","CashOut":"Y","BankOut":"Y","MMT":"Y"},
 {"isoCode":"BF","name":"Burkina Faso","CashOut":"Y","BankOut":"","MMT":null},
 {"isoCode":"BI","name":"Burundi","CashOut":"","BankOut":"","MMT":"Y"},
 {"isoCode":"KH","name":"Cambodia","CashOut":"Y","BankOut":"","MMT":null}
]

我希望所有具有BankOut值的名称为" Y"使用JavaScript进入数组,以便在我的量角器自动化中使用这些名称。

2 个答案:

答案 0 :(得分:1)

您需要使用数组的过滤方法。它需要函数作为参数。并针对数组的每个元素运行它。如果函数返回true(或其他真值),那么该元素将保留在新创建的数组中。

var list =[    {"isoCode":"BW","name":"Botswana ","CashOut":"Y","BankOut":"","MMT":null},
 {"isoCode":"BR","name":"Brazil ","CashOut":"Y","BankOut":"Y","MMT":null},
 {"isoCode":"BG","name":"Bulgaria ","CashOut":"Y","BankOut":"Y","MMT":"Y"},
 {"isoCode":"BF","name":"Burkina Faso ",   "CashOut":"Y","BankOut":"","MMT":null},
 {"isoCode":"BI","name":"Burundi","CashOut":"","BankOut":"","MMT":"Y"},
 {"isoCode":"KH","name":"Cambodia","CashOut":"Y","BankOut":"","MMT":null}
 ];

var onlyBankOutY = list.filter(function (item) {
  return item.BankOut === 'Y';
});

document.body.innerHTML = onlyBankOutY.map(function (item) {
  return JSON.stringify(item);
}).join('<br>');

答案 1 :(得分:1)

var list =[
  {"isoCode":"BW","name":"Botswana ","CashOut":"Y","BankOut":"","MMT":null},
  {"isoCode":"BR","name":"Brazil ","CashOut":"Y","BankOut":"Y","MMT":null},
  {"isoCode":"BG","name":"Bulgaria ","CashOut":"Y","BankOut":"Y","MMT":"Y"},
  {"isoCode":"BF","name":"Burkina Faso ",   "CashOut":"Y","BankOut":"","MMT":null},           {"isoCode":"BI","name":"Burundi","CashOut":"","BankOut":"","MMT":"Y"},
  {"isoCode":"KH","name":"Cambodia","CashOut":"Y","BankOut":"","MMT":null}
];

var names = [];
list.forEach(function(el) {
  if (el.BankOut === 'Y') {
    names.push(el.name)
  }
})