我很难将push
元素添加到位于外部位置的JSON文件中;这是我要实现的目标的背景故事:
我正在编程一个私有Discord机器人,目前正在研究它的消息系统部分。整个想法是,如果未完全授权用户将用户的消息删除,则该消息将被删除。该用户的消息和用户ID 将被登录到JSON文件中。事实是,如果将UserID手动添加到阵列中,我可以仅记录消息(使用push
函数,我可以添加消息)。但是,如果我尝试向文件数组push
添加一个UserID,它就好像没有push
函数一样;我认为JSON也
JSON
{"users":[{}]}
我想将UserID放在方括号内的括号内
push
到JSON的代码
function removeMessage(content, authorid) {
if (!messagedata.users[0][authorid]) {
messagedata.users[0].push(authorid);
}
}
我正在使用:
TypeError:messagedata.users [0] .push不是函数
预期产量
{"users":[{"287423028147781654":["Hi"]}]}
数值是用户ID,而“ Hi”显然是消息
答案 0 :(得分:0)
users[0]
是一个对象,而不是数组(因此没有push
方法)。看来您实际上是要向该对象添加一个键,因此请尝试以下操作:
messagedata.users[0][authorid] = ["Hi"];