【问题标题】:I want to get an associative array form a JavaScript object list我想从 JavaScript 对象列表中获取关联数组
【发布时间】:2018-05-24 04:46:47
【问题描述】:

我有一个类似的 JavaScript 对象

<pre>
{
 1:{taxCalculation: 39.95, taxId: "3"},
 2:{taxCalculation: 10,    taxId: "3"},
 5:{taxCalculation: 0.48,  taxId: "2"}
}
</pre>

我想从下面的对象创建一个关联数组

<pre>
 [
  1:{taxCalculation: 39.95, taxId: "3"},
  2:{taxCalculation: 10,    taxId: "3"},
  5:{taxCalculation: 0.48,  taxId: "2"}
 ]
</pre>

【问题讨论】:

  • 这不是有效的 JSX 语法。在您的第一个示例中,{} 表示您开始编写 javascript,但您的内部代码不是有效的 JS。在您的第二个示例中,如果不将其包装在 {} 中,您将无法传递这样的数组。请将您的问题更新为有效的 sn-p
  • 这根本不是一个数组。您的意思是创建一个包含三个对象的数组吗?
  • @AnilRedshift 你不是说{}吗?
  • 谢谢,已编辑帖子

标签: javascript arrays reactjs object


【解决方案1】:

假设您的对象称为myObject。您可以像下面这样在 Javascript 中简单地创建一个数组。

let myArray = [];

Object.keys(myObject).forEach((key, index) => {
  myArray[key] = myObject[key];
});

您的新数组 myArray 应该可以满足您的需求。

【讨论】:

    【解决方案2】:

    您可以使用 ES6 语法尝试以下操作

    var obj = {
      1: {taxCalculation: 39.95, taxId: "3"},
      2: {taxCalculation: 10,    taxId: "3"},
      5: {taxCalculation: 0.48,  taxId: "2"}
    }
    
    
    let answer = [...Object.values(obj)]
    
    console.log(answer)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-10-30
      • 1970-01-01
      • 1970-01-01
      • 2012-01-30
      • 1970-01-01
      • 2020-09-10
      • 1970-01-01
      相关资源
      最近更新 更多