Javascript 解析JSON并创建可读数组

Javascript 解析JSON并创建可读数组,javascript,node.js,arrays,json,Javascript,Node.js,Arrays,Json,这里的目标是将从API(无法控制)提供的JSON解析到我自己制作的数组中。我有两个问题: 我不知道如何才能在“元数据”下获得#2的值 如果我想获取第一个名为“时间序列(5min):”的数组,并将其放入自己的数组中,我只是不确定。会是这样吗 现在可以将对象.values(dat)推送到数组中 您现在可以将对象.values(dat)推送到一个数组。这是我运行的代码,似乎可以解决您的问题(完整): var数据=`[{ “元数据”:{ “1.符号”:“XXX”, “2.上次刷新”:“2020-07

这里的目标是将从API(无法控制)提供的JSON解析到我自己制作的数组中。我有两个问题:

  • 我不知道如何才能在“元数据”下获得#2的值

  • 如果我想获取第一个名为“时间序列(5min):”的数组,并将其放入自己的数组中,我只是不确定。会是这样吗

  • 现在可以将
    对象.values(dat)
    推送到数组中


    您现在可以将
    对象.values(dat)
    推送到一个数组。

    这是我运行的代码,似乎可以解决您的问题(完整):

    var数据=`[{
    “元数据”:{
    “1.符号”:“XXX”,
    “2.上次刷新”:“2020-07-17 19:25:00”,
    “3.间隔时间”:“5分钟”
    },
    “时间序列(5分钟)”:{
    "2020-07-17 19:25:00": {
    “1.打开”:“125.4800”,
    “2.高”:“125.4800”,
    “3.低”:“125.4800”,
    “4.关闭”:“125.4800”,
    “5.卷”:“100”
    },
    "2020-07-17 19:05:00": {
    “1.开放”:“125.2400”,
    “2.高”:“125.2400”,
    “3.低”:“125.2400”,
    “4.关闭”:“125.2400”,
    “5.卷”:“200”
    },
    "2020-07-17 19:00:00": {
    “1.打开”:“125.4000”,
    “2.高”:“125.4000”,
    “3.低”:“125.2400”,
    “4.关闭”:“125.2400”,
    “5.卷”:“1048”
    },
    "2020-07-17 18:40:00": {
    “1.打开”:“125.3000”,
    “2.高”:“125.3000”,
    “3.低”:“125.3000”,
    “4.关闭”:“125.3000”,
    “5.卷”:“248”
    },
    "2020-07-17 18:35:00": {
    “1.打开”:“125.3500”,
    “2.高”:“125.3500”,
    “3.低”:“125.3000”,
    “4.关闭”:“125.3000”,
    “5.卷”:“399”
    }
    }
    }]`;
    var bodyParsed=JSON.parse(数据);
    让bodyArray=[]
    //元数据#2
    让metaData=bodyParsed[0][“元数据”];
    让num2=元数据[“2.上次刷新”];
    车身阵列推力(num2);
    //时间序列。
    让timeSeries=bodyParsed[0][“时间序列(5min)”][num2];
    推(
    timeSeries[“1.打开”],
    时间序列[“2.高”],
    时间序列[“3.低”],
    timeSeries[“4.关闭”],
    timeSeries[“5.卷”]
    );
    console.log(bodyArray);
    
    这是我运行的代码,似乎可以解决您的问题(完整):

    var数据=`[{
    “元数据”:{
    “1.符号”:“XXX”,
    “2.上次刷新”:“2020-07-17 19:25:00”,
    “3.间隔时间”:“5分钟”
    },
    “时间序列(5分钟)”:{
    "2020-07-17 19:25:00": {
    “1.打开”:“125.4800”,
    “2.高”:“125.4800”,
    “3.低”:“125.4800”,
    “4.关闭”:“125.4800”,
    “5.卷”:“100”
    },
    "2020-07-17 19:05:00": {
    “1.开放”:“125.2400”,
    “2.高”:“125.2400”,
    “3.低”:“125.2400”,
    “4.关闭”:“125.2400”,
    “5.卷”:“200”
    },
    "2020-07-17 19:00:00": {
    “1.打开”:“125.4000”,
    “2.高”:“125.4000”,
    “3.低”:“125.2400”,
    “4.关闭”:“125.2400”,
    “5.卷”:“1048”
    },
    "2020-07-17 18:40:00": {
    “1.打开”:“125.3000”,
    “2.高”:“125.3000”,
    “3.低”:“125.3000”,
    “4.关闭”:“125.3000”,
    “5.卷”:“248”
    },
    "2020-07-17 18:35:00": {
    “1.打开”:“125.3500”,
    “2.高”:“125.3500”,
    “3.低”:“125.3000”,
    “4.关闭”:“125.3000”,
    “5.卷”:“399”
    }
    }
    }]`;
    var bodyParsed=JSON.parse(数据);
    让bodyArray=[]
    //元数据#2
    让metaData=bodyParsed[0][“元数据”];
    让num2=元数据[“2.上次刷新”];
    车身阵列推力(num2);
    //时间序列。
    让timeSeries=bodyParsed[0][“时间序列(5min)”][num2];
    推(
    timeSeries[“1.打开”],
    时间序列[“2.高”],
    时间序列[“3.低”],
    timeSeries[“4.关闭”],
    timeSeries[“5.卷”]
    );
    console.log(bodyArray);
    
    不知道。非常感谢。哦没问题,兄弟:)不知道。非常感谢。哦没问题,兄弟:)
    var bodyParsed = JSON.parse(data);
    let bodyArray = bodyParsed['Time Series (5min:']
    for (var i = 0; i < bodyArray.length; i++) {
    
      firstArray.push([
        bodyArray[i][0], //"1. open": "125.4800",
        bodyArray[i][1], //"2. high": "125.4800",
      ])
    
    }
    
    var data = [
    {
    "Meta Data": {
        "1. Symbol": "XXX",
        "2. Last Refreshed": "2020-07-17 19:25:00",
        "3. Interval": "5min",
    },
    "Time Series (5min)": {
        "2020-07-17 19:25:00": {
            "1. open": "125.4800",
            "2. high": "125.4800",
            "3. low": "125.4800",
            "4. close": "125.4800",
            "5. volume": "100"
        },
        "2020-07-17 19:05:00": {
            "1. open": "125.2400",
            "2. high": "125.2400",
            "3. low": "125.2400",
            "4. close": "125.2400",
            "5. volume": "200"
        },
        "2020-07-17 19:00:00": {
            "1. open": "125.4000",
            "2. high": "125.4000",
            "3. low": "125.2400",
            "4. close": "125.2400",
            "5. volume": "1048"
        },
        "2020-07-17 18:40:00": {
            "1. open": "125.3000",
            "2. high": "125.3000",
            "3. low": "125.3000",
            "4. close": "125.3000",
            "5. volume": "248"
        },
        "2020-07-17 18:35:00": {
            "1. open": "125.3500",
            "2. high": "125.3500",
            "3. low": "125.3000",
            "4. close": "125.3000",
            "5. volume": "399"
        }
    }
    ]
    
    data.map((dat, key) => console.log(Object.values(dat)));