如何在不知道名称的情况下从 JSON 对象中获取数据

How do I get data out of JSON object withouth knowing the names

您好,我有一个 javascript 对象,如下所示:

    {"_balance":"1500","texts":{
                                "0x4b8ca107efbc8b096c011f64d2c2d7aebdaec7fe": {"Best":"200","first one":"0"},
                                "0x7901b2b9caaeff5478d14873c39765373a48f890":{"number one !!!!1111":"1500"}}}

我可以objName.texts取出物体。

这让我有:

  {"0x4b8ca107efbc8b096c011f64d2c2d7aebdaec7fe":{"Best":"200","first one":"0"},
   "0x7901b2b9caaeff5478d14873c39765373a48f890":{"number one !!!!1111":"1500"}}

这是一张地址地图,其中包含他们留下的所有消息以及消息所含的点数。现在我需要取出消息并按点升序对它们进行排序,但我不知道从哪里开始。

我不是在寻找完整的答案。只是一种单独获取值并将它们放入数组中的方法。我不知道从哪里开始...

感谢您的关注

这里有三种方便的方法可能会有所帮助:

  • Object.keys(objName.texts) - return 键数组
  • Object.values(objName.texts) - return 值数组
  • Object.entries(objName.texts) - return [key, value]
  • 数组

你可以使用这样的语法:

   Object.keys(jsonData['texts']).forEach(function(key) {
        var value = jsonData['texts'][key];
        console.log(key + ':');
        console.log(value);
    });

请注意,值仍然是一个对象,这就是为什么我 console.log 将它分开。