为了账号安全,请及时绑定邮箱和手机立即绑定

为什么我得到 [object Object] javascript JSON 文件

为什么我得到 [object Object] javascript JSON 文件

三国纷争 2023-05-11 13:55:24
Console.log(values) 返回“[object Object]”而不是记录数组。这是我的代码:let values = {    "coins": 0,    "griffinFeathers": 0,    "souvenir": 0,    "cogs": 0,    "cats": 0,    "golems": 0,    "champions": 0,    "minotaurs": 0,    "inquisitors": 0}JSON.stringify(FileLib.write("MinotaurLoot", "values.json", values));function thing() {    fileThing = JSON.stringify(FileLib.read("MinotaurLoot", "values.json"));    if (griffin_thing_idk) fileThing.griffin++;    }console.log(values) // [object Object]
查看完整描述

1 回答

?
翻翻过去那场雪

TA贡献2065条经验 获得超13个赞

看着:


JSON.stringify(FileLib.write("MinotaurLoot", "values.json", values));


JSON.stringify()应该删除,因为您没有 在任何地方存储返回的对象的字符串化版本,或者执行类似的操作:


const stringifiedValues = 

    JSON.stringify(FileLib.write("MinotaurLoot", "values.json", values));


//Now you should be able to console.log without getting [object Object]

console.log(stringifiedValues);

现在,你得到的原因[object Object]是因为 JavaScript 的默认实现console.log()不能优雅地处理 JavaScript 对象,因为它们是比 String 或 Number 这样的基元“更复杂”的数据结构。


正如@coderpc 在对您的问题的评论中所指出的,您可以在将对象JSON.stringify()包装在语句中之前使用该方法访问对象的内部内容console.log。


让我们知道它是否有效。


查看完整回答
反对 回复 2023-05-11
  • 1 回答
  • 0 关注
  • 159 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信