首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >基于对象内部数组的新对象数组?

基于对象内部数组的新对象数组?
EN

Stack Overflow用户
提问于 2016-08-19 04:55:42
回答 3查看 70关注 0票数 0

需要基于数组的元素创建对象的浅数组,数组的元素是对象的值:

代码语言:javascript
运行
复制
var obj = {
  a: 1,
  b: 'x',
  c: 'z',
  d: ['rr', 'qq']
};

var rec = [];

obj.d.forEach(function(e, i) {
  rec.push({
    d: e
  })
});

console.log(rec);

但当然这只会让我

代码语言:javascript
运行
复制
[ { d: 'rr' }, { d: 'qq' } ]

如何在新的对象数组中实现这一点?-->

代码语言:javascript
运行
复制
[ { a: 1,
    b: 'x',
    c: 'z',
    d: 'rr' }, 
  { a: 1,
    b: 'x',
    c: 'z',
    d: 'qq' } ]
EN

Stack Overflow用户

回答已采纳

发布于 2016-08-19 04:57:22

代码语言:javascript
运行
复制
obj.d.forEach(function(e) {
    var item = {};

    Object.keys(obj).forEach(function(key) {
        item[key] = obj[key];
    });

    item.d = e;

    rec.push(item);
});

但是属性a,b,c不能是对象。否则,rec数组中的每一项都将具有相同的引用。

票数 4
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39027359

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档