javascript - 如何使用 Node.JS/Javascript 在 JSON 文件中编辑奇异值
问题描述
我正在使用 discord.js 制作一个不和谐机器人,并且我有一个系统,我可以通过将 JSON 文件中的值从 true 更改为 false 来关闭和打开,反之亦然。我创建了一个命令,允许不和谐的版主打开和关闭该系统。这就是我的问题所在。在那个 JSON 文件中,我有 2 个值。
一个是包含不同字符串的数组,系统将使用这些字符串随机选择将消息发送回 Discord
第二个值只是一个调用的布尔值timedStatus
,它设置为 true 或 false 以打开和关闭系统。我想知道如何在不影响数组的情况下更改该值。我以前做过类似的事情,但我不记得该怎么做。
这是我的命令代码。
if (cmd === prefix + "timedreplies") {
if (timedReplies.replystatus = true) {
console.log("Timed replies set to off");
// Set to off
} else {
console.log("Timed replies set to on");
// set to on
}
}
解决方案
直接改值就好了!
东西.json
{
arr: ['str1', 'str2', 'str3'],
timedStatus: false
}
如您所见,这是 JSON 文件(虽然我不知道它到底长什么样)
在这里,我们将使用fs
模块(无需安装)来读取和写入文件。
const fs = require('fs')
const file = fs.readFileSync('./something.json', 'utf8');
const data = JSON.parse(file)
data.timedStatus = true
fs.writeFileSync('./something.json', JSON.stringify(data))
推荐阅读
- video-streaming - H265 .mp4 文件格式开源分析器可用吗?
- php - chunk_split 与 substr 的好处?
- vba - 如果无法访问主服务器,则停止 SendChars
- node.js - 通过heroku上网站的路径打开本地文件
- javascript - 意外的`属性'forEach'在类型上不存在`错误
- html - Lighttpd 服务器无法在自定义错误中打开 jpg 图像
- android - 使用 audiorecord 录制后音轨会发出噪音
- python - 在基本脚本中使用 break 语句
- spacy - 为什么我的 SpaCy v3 记分器在精度、召回率和 f1 方面返回 0?
- javascript - JSON 匹配键/值并获取每个键的总值