我正在使用 api,它会返回以下响应:-
{
VJiQND:
{
optin: 'double',
is_default: 'no',
from_email: 'xxxxxxx@gmail.com',
name: 'ding',
reply_to_email: 'xxxxxxx@gmail.com',
created_on: '2015-05-18 11:32:37',
from_name: 'Xa'
},
VJj3KAS:
{
optin: 'double',
is_default: 'yes',
from_email: 'xxxx@gmail.com',
name: 'xtusxx',
reply_to_email: 'xxxxx@gmail.com',
created_on: '2015-05-18 09:09:43',
from_name: 'Ads'
}
}
现在我想获得 VJj3KAS
如果 from_name 等于“广告”我尝试 filter
功能,但它不起作用,它给我抛出一个错误,你能帮我吗获得该值。
谢谢
最佳答案
过滤器函数适用于数组,而你拥有的是一个映射。您必须简单地迭代映射键/值对并检查它们是否符合您的条件。
function getFilteredKeys(map, filter) {
var filteredKeys = [];
for (var key in map) {
if (filter(key, map[key])) {
filteredKeys.push(key);
}
}
return filteredKeys;
}
用法:
var keys = getFilteredKeys(apiResult, function(key, value){
return value.from_name && value.from_name === 'Ads';
});
关于javascript - 使用 javascript 访问响应中的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30302447/