javascript - 使用 javascript 访问响应中的数据

标签 javascript

我正在使用 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/

相关文章:

javascript - 使用模板但保留 jquery 绑定(bind)?

javascript - 从 Wordpress 网站进行 AJAX 调用时如何保护 API key ?

javascript - TrimStart()在文本框中动态空格,ASP.NET MVC

javascript - 正则表达式匹配字符串中的多个数字

javascript - 流畅更换背景图片

javascript - iframe 收到 postMessage 内容后加载所有内容

javascript - 在容器 div 中分别居中 2 个 div

javascript - 如何将函数应用于选定的元素,将 Jquery 代码转换为 JS 并获取类型错误

javascript - 谷歌图表 : Show only a certain country

javascript - React - react.render() 上未处理的错误事件