如何编辑 .JSON 对象的值
how to edit value of the .JSON object
我正在尝试在 .JSON 文件中创建一些简单的统计信息,我想计算发出的每个命令,但我无法在 .[=21 中保存增量值=] 文件.
.JSON
{
"stats": {
"value": 0,
"points": 0,
"commandUsed": 0
}
}
代码:
const fs = require('fs');
let statistics = fs.readFileSync(__dirname + '/stats.json', 'utf8');
let stats = JSON.parse(statistics)
console.log(stats)
//stats
let value = stats['stats']['value']
let points = stats['stats']['points']
let usedCommands = stats['stats']['commandUsed']
usedCommands++
console.log(usedCommands) //logs actual amount of issued commands
fs.writeFileSync(__dirname + '/stats.json', JSON.stringify(stats, 0, 4), 'utf8')
.JSON 文件中的命令计数没有增加。
我注意到了几件事。你有一些你没有使用的变量,你试图“增加”的是你的 JSON 文件(更新)中的一个字符串。试试这个。
const fs = require("fs");
const statistics = fs.readFileSync(__dirname + "/stats.json", "utf8");
const { stats } = JSON.parse(statistics);
let commandUsed = stats["commandUsed"];
commandUsed++;
const updatedStats = { stats: { ...stats, commandUsed } };
fs.writeFileSync(
__dirname + "/stats.json",
JSON.stringify(updatedStats, 0, 4),
"utf8"
);
{
"stats": {
"commandUsed": 0,
"points": 0,
"value": 0
}
}
我正在尝试在 .JSON 文件中创建一些简单的统计信息,我想计算发出的每个命令,但我无法在 .[=21 中保存增量值=] 文件.
.JSON
{
"stats": {
"value": 0,
"points": 0,
"commandUsed": 0
}
}
代码:
const fs = require('fs');
let statistics = fs.readFileSync(__dirname + '/stats.json', 'utf8');
let stats = JSON.parse(statistics)
console.log(stats)
//stats
let value = stats['stats']['value']
let points = stats['stats']['points']
let usedCommands = stats['stats']['commandUsed']
usedCommands++
console.log(usedCommands) //logs actual amount of issued commands
fs.writeFileSync(__dirname + '/stats.json', JSON.stringify(stats, 0, 4), 'utf8')
.JSON 文件中的命令计数没有增加。
我注意到了几件事。你有一些你没有使用的变量,你试图“增加”的是你的 JSON 文件(更新)中的一个字符串。试试这个。
const fs = require("fs");
const statistics = fs.readFileSync(__dirname + "/stats.json", "utf8");
const { stats } = JSON.parse(statistics);
let commandUsed = stats["commandUsed"];
commandUsed++;
const updatedStats = { stats: { ...stats, commandUsed } };
fs.writeFileSync(
__dirname + "/stats.json",
JSON.stringify(updatedStats, 0, 4),
"utf8"
);
{
"stats": {
"commandUsed": 0,
"points": 0,
"value": 0
}
}