我在这里有此代码:

const timer = nodeSchedule.scheduleJob("*/5 * * * * *",function() {
    let arr = require("./autometar.json");
    for (let val in arr) {
        console.log(val);
        console.log(val[0]);
    }
});


nodeSchedule指的是一个称为“ node-schedule”的npm库;在这种情况下,它所做的所有操作都是每5秒运行一次该函数。

autometar.json是当前文件,如下所示:

{
    "420431645041229834": [
        "422658075720417290",
        "KSEA",
        "KLAX"
    ],
    "test": [
        "this is a test"
    ]
}


当前,我正在尝试检索存储在autometar.json内的数组中的第一个值。例如,我希望能够从文件中标记为"this is a test"的数组中检索字符串"test"

但是,使用给定文件运行上述功能时,控制台将输出以下内容:

420431645041229834
4
test
t


它似乎只返回存储的字符串的第一个字符,但是我需要整个字符串。

仅供参考,它通过Node.js运行。

最佳答案

你近了尝试这个:

console.log(arr[val][0]);


arr是JSON对象,而val实际上是键,而不是值。 arr[val]将为您提供所需的数组,然后您可以使用arr[val][0]获得第一项。

09-25 18:20
查看更多