javascript - 动态 JSON 参考 Node.js
问题描述
我有一个 JSON 文件“jFile”,格式如下:
{
"Entry1": null,
"Entry2": "SomeValue"
}
以下格式的一些 node.js 正确更新了文件:
jFile.Entry1= "SomeText";
fs.writeFileSync( "jFile.json", JSON.stringify(jFile, null, 2), "utf8");
但是,如果我这样做:
var testEnt = 'Entry' + 1;
jFile.testEnt = "SomeText";
fs.writeFileSync( "jFile.json", JSON.stringify(jFile, null, 2), "utf8");
该脚本运行没有错误,但从不更新“Entry1”。我尝试以几种方式引用它(例如 jFile.[testEnt]),但我得到了各种新的和有趣的方式它不起作用。
我的问题是:
- 为什么?我知道脚本不理解“testEnt”没有正确理解我现在的意思是作为参考,而不是字符串,但我不明白我能做些什么。
- 如何以这种方式动态引用条目?我想让脚本灵活,但似乎无法找到有关如何执行此操作的信息。
解决方案
在您的示例中,您写道:
jFile.[testEnt]
正确的语法是:
jFile[testEnt]
您尝试动态访问和编辑对象属性的方式是正确的,但是您遇到了轻微的语法错误。
推荐阅读
- javascript - 如果搜索包含括号或方括号,RegEx 匹配将返回 undefined
- ruby-on-rails - 门卫外键违反访问授权
- php - 用 php rand() 数字填充 html 表
- python - 我们如何得到这个按位运算的答案?
- google-chrome-extension - 有没有办法从后台脚本获取浏览器信息,包括版本号?
- python - python - 属性 x 是一个属性对象,它为这个私有变量提供接口
- javascript - 用 jest 测试回调函数
- ios - 如何从来自后端的 mp3 文件 URL 获取元数据以显示 ArtWork Image?
- scala - 火花迭代编程 - 退出条件而不启动作业
- c# - 使用语句连接未关闭异常