如何使用javascript

时间:2016-05-13 07:05:05

标签: javascript json

我低于JSON,我想为每个产品类别(电子产品,家庭产品,玩具等)动态获取关键和价值。这些类别是动态的 - 它可以是任何东西。

我想将所有产品名称存储在一个数组中,并将值存储在另一个数组中,如下所示

var products = [Laptop, Photoframe, Toys]
Var productCount = [5,6,2]

如何从JSON动态获取密钥和值?任何帮助

{
    "product": {
        "Electronics": {
            "Laptop": 5
        },
        "Home": {
            "Photoframe": 6
        },
        "Toys": {
            "PuzzleBox": 2
        }
    }
}

1 个答案:

答案 0 :(得分:0)

您可以使用 Object.keys() 获取对象密钥,然后使用 forEach() 对其进行迭代并生成数组。



var products = [],
  productCount = [],
  data = {
    "product": {
      "Electronics": {
        "Laptop": 5
      },
      "Home": {
        "Photoframe": 6
      },
      "Toys": {
        "PuzzleBox": 2
      }
    }
  };

Object.keys(data.product).forEach(function(v) {
  var k = Object.keys(data.product[v])[0];
  products.push(k);
  productCount.push(data.product[v][k]);
});

document.write('<pre>' + JSON.stringify(products, 0, 3) + '\n' + JSON.stringify(productCount, 0, 3) + '</pre>');
&#13;
&#13;
&#13;