javascript - Js - 转换对象数据(WP-API)

标签 javascript arrays wordpress api object

请求后的代码:

var posts = [
  {  
    "id":268,
    "title":{  
       "rendered":"Koala"
    },
    "categories":[2]
  }
]

var categories = [  
  {  
    "id":2,
    "name":"Animals"
  },
  {  
    "id":3,
    "name":"Birds"
  },
]

目标: - 创建一个接受 posts.categories 值的函数,并将其替换为匹配的categories.name id。

结果:

var posts = [
  {  
    "id":268,
    "title":{  
       "rendered":"Koala"
    },
    "categories":["Animals"]
  }
]

我四处寻找,但没有找到解决方案。有人可以帮我解决这个问题吗?

最佳答案

这是一种方法:

function setPostsCategories(posts, categories) {
  posts.forEach(function(post) {
    var cats = []
    post.categories.forEach(function(categorie) {     
      cats.push(categories.find(function(a) {
        return a.id == categorie
      }).name);
    })
    post.categories = cats
  })
  return posts
}

console.log("post",setPostsCategories(posts, categories));

参见demo fiddle here 。如果需要支持IE,check here定义 Array.find。

关于javascript - Js - 转换对象数据(WP-API),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46874770/

相关文章:

javascript - 如何使用knockout映射插件绑定(bind)匿名对象?

javascript - 如何根据两个属性对对象数组进行排序并检查范围是否连续?

javascript - C# ASP.NET slider JavaScript 在 HTML 页面和 ASPX 网站中的 react 不同

c++ - 将数组拆分为多个数组c++

javascript - 判断数组中的某个元素是否为字符串

JavaScript:创建和初始化二维数组(矩阵)的更快方法

php - 将侧边栏与我的主要内容 Bootstrap 对齐

javascript - RSS Feed 与浏览器中的显示方式完全不同

php - WORDPRESS:黑客评论表就像告诉 friend 一样

javascript - Q Promise同步应答