У меня есть этот код здесь:
const timer = nodeSchedule.scheduleJob("*/5 * * * * *",function() {
let arr = require("./autometar.json");
for (let val in arr) {
console.log(val);
console.log(val[0]);
}
});
nodeSchedule
относится к библиотеке npm, называемой "node-schedule"; все, что он делает в этом контексте, запускает функцию выше каждые 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]
.
Вы можете перебирать значения объекта, Look:
const sample = {
"420431645041229834": [
"422658075720417290",
"KSEA",
"KLAX"
],
"test": [
"this is a test"
]
}
Object.values(sample).forEach(value => {
const [firstElementOfArray] = value
console.log(firstElementOfArray)
})