【问题标题】:Convert each array into objects将每个数组转换为对象
【发布时间】:2018-06-21 09:14:39
【问题描述】:

我是 JavaScript 新手。我怎么对数组和对象不太熟悉。我现在被它困住了。

我有一个这样的数组。

[ '5', '13', '16', '22', '24' ] 1st

我正在努力实现以下目标

[null,{
            "0": 5,
            "1": "FFFRRR",
            "tx": 0,
            "ty": 0,
            "tz": 0,
            "rx": 0,
            "ry": 0,
            "rz": 0
        },
        {
            "0": 13,
            "1": "FFFRRR",
            "tx": 0,
            "ty": 0,
            "tz": 0,
            "rx": 0,
            "ry": 0,
            "rz": 0
        },
        {
            "0": 16,
            "1": "FFFRRR",
            "tx": 0,
            "ty": 0,
            "tz": 0,
            "rx": 0,
            "ry": 0,
            "rz": 0
        },
        {
            "0": 22,
            "1": "FFFRRR",
            "tx": 0,
            "ty": 0,
            "tz": 0,
            "rx": 0,
            "ry": 0,
            "rz": 0
        },
        {
            "0": 24,
            "1": "FFFRRR",
            "tx": 0,
            "ty": 0,
            "tz": 0,
            "rx": 0,
            "ry": 0,
            "rz": 0
        }]

感谢那些愿意提供帮助的人。

【问题讨论】:

  • 查看您可用的Array 方法。提示:map。除了0 属性的值之外,您的所有对象都是相同的。尝试一些事情,然后在遇到困难时提出具体问题。

标签: javascript arrays json object


【解决方案1】:

对于每个代码,您都想映射一个对象。 Array.prototype.map 非常适合这种治疗方式。

const codes = ['5', '13', '16', '22', '24'];

const mappedObjects = codes.map(code => {
    return {
        '0': Number(code),
        '1': 'FFFRRR',
        tx: 0,
        ty: 0,
        tz: 0,
        rx: 0,
        ry: 0,
        rz: 0,
    };
});

【讨论】:

  • 谢谢伙计,我研究了半天,直到你出现才找到答案。代码有效
  • 如何把它放在一个函数中?
  • function objectsFromCodes(codes) { return codes.map(code => ...); }
  • sergio 你是怎么粘贴这么长的代码的?我不能那样张贴我的。在 cmets 中
猜你喜欢
  • 2021-09-14
  • 2019-02-12
  • 2020-06-17
  • 2019-07-29
  • 1970-01-01
  • 2021-12-13
  • 2021-05-03
相关资源
最近更新 更多