对象中的对象映射

javascript map for object in object

本文关键字:对象 映射      更新时间:2023-09-26

这是一个例子(从google chrome控制台复制):

var obj = [
    {word: "a"},
    {word: "b"}
];
obj.map(function(i){return i.word;})
result: ["a", "b"]

我需要做同样的事情,但对于这个:

var o = [{
    user: "a",    
    keywords: [
         {word: "a"},
         {word: "b"},
         {word: "c"}
     ]
}];

我需要在o中映射keywords。请帮我解决这个问题

应该可以:

var o = [{
    user: "a",    
    keywords: [
         {word: "a"},
         {word: "b"},
         {word: "c"}
     ]
}];
var arr = [];
o.forEach(function(k){
  k.keywords.forEach(function(w){
    arr.push(w);
  });
});
document.write(JSON.stringify(arr))

<script>
    var o = [{
    user: "a",    
    keywords: [
         {word: "a"},
         {word: "b"},
         {word: "c"}
     ]
}];
    var words=[];
    o.map(function(i){ words.push(i.keywords);});
    console.log(words[0].map(function(i){return i.word;}));
  </script>