JSON:将数值数组转换为对象

时间:2016-10-19 11:23:56

标签: javascript jquery arrays json

这是我使用jQuery编码数组时获得的JSON:

[{"name":"11233","po":"121212","po_item_number":"000001","po_item_material_code":"material","po_item_description":"assemble","sales_order":"11000000","sales_order_item":"10","tracable":"sds"},
{"name":"11233","po":"121212","po_item_number":"000001","po_item_material_code":"material","po_item_description":"assemble","sales_order":"11000000","sales_order_item":"10","tracable":"sds"},
{"name":"11233","po":"121212","po_item_number":"000001","po_item_material_code":"material","po_item_description":"assemble","sales_order":"11000000","sales_order_item":"10","tracable":"sds"},
{"name":"11233","po":"121212","po_item_number":"000001","po_item_material_code":"material","po_item_description":"assemble","sales_order":"11000000","sales_order_item":"10","tracable":"sds"},
{"name":"11233","po":"121212","po_item_number":"000001","po_item_material_code":"material","po_item_description":"assemble","sales_order":"11000000","sales_order_item":"10","tracable":"sds"}]

但我需要一个像这样的对象:

<dependency>
    <artifactId>commons-lang</artifactId>
    <groupId>commons-lang</groupId>
    <version>2.4</version>
</dependency>

我该怎么做?

1 个答案:

答案 0 :(得分:1)

如果您的输入是String,则首先将其解析为对象。

var obj = JSON.parse( inputStr );

试试这个(假设obj是输入)

var output = Object.keys( obj ).map( function(key){
  return obj[ key ];
})

var obj = {
  "1": {
    "name": "11233",
    "po": "121212",
    "po_item_number": "000001",
    "po_item_material_code": "material",
    "po_item_description": "assemble",
    "sales_order": "11000000",
    "sales_order_item": "10",
    "tracable": "sds"
  },
  "2": {
    "name": "11233",
    "po": "121212",
    "po_item_number": "000001",
    "po_item_material_code": "material",
    "po_item_description": "assemble",
    "sales_order": "11000000",
    "sales_order_item": "10",
    "tracable": "sds"
  },
  "3": {
    "name": "11233",
    "po": "121212",
    "po_item_number": "000001",
    "po_item_material_code": "material",
    "po_item_description": "assemble",
    "sales_order": "11000000",
    "sales_order_item": "10",
    "tracable": "sds"
  },
  "4": {
    "name": "11233",
    "po": "121212",
    "po_item_number": "000001",
    "po_item_material_code": "material",
    "po_item_description": "assemble",
    "sales_order": "11000000",
    "sales_order_item": "10",
    "tracable": "sds"
  },
  "5": {
    "name": "11233",
    "po": "121212",
    "po_item_number": "000001",
    "po_item_material_code": "material",
    "po_item_description": "assemble",
    "sales_order": "11000000",
    "sales_order_item": "10",
    "tracable": "sds"
  }
};

var output = Object.keys(obj).map(function(key) {
  return obj[key];
})

console.log(output);