Это мой очень сложный код после полудня исследований. (Я знаю, что это слишком сложно, но я хотел показать, что я пробовал до сих пор) < /p>
Код: Выделить всё
async function saveJsonFile(data, fileName = 'myFile') {
try {
const jsonData = JSON.stringify(data);
// clear cache
delete require.cache[require.resolve(`./${fileName}.json`)];
// ensure the file exists
await fs.readFile(`${fileName}.json`, 'utf8', (err) => {
if (err) {}
else {
// clear the content of the file
fs.writeFile(`${fileName}.json`, "", "utf8", (err) => {
if (err) {}
else {
// save the json {
if (err) {
}
});
// try saving again
fs.writeFile(`${fileName}.json`, jsonData, 'utf8', (err) => {
if (err) {
}
});
}
});
}
});
}
}
< /code>
Вызывается из другого асинхронного фонда: < /p>
async function runTrading()
{
try {
for (let i = 1; i
Это то, что я получаю (разные петли, попытки, версии и т. Д.)
Обратите внимание на 2 кронштейна в конце каждой строки или в середине. В журнале это выглядит нормально перед сохранением! < /P>
{"prod1":32154.22}}< /code>
или
{"prod1":32154.22,"prod2":0,"prod3":0}32}}Подробнее здесь: https://stackoverflow.com/questions/794 ... in-node-js