创buildJSON属性

好日子stackoverflow,

我在创buildJSON对象时遇到了一些麻烦。 我有这个代码片段,应该给名为members的列表添加名称,然后为每个名称添加一个属性。 这是问题的片段:

 for (var i = 0; i < msg.channel.server.members.length; i++) { savedVars.Servers[thisServerID]["Members"].push(msg.channel.server.members[i].name); savedVars.Servers[thisServerID]["Members"][i]["Object"] = {}; }; 

上面的代码片段完美地写了名字列表,但是不创build"Object"属性。 也没有任何错误或任何迹象表明它根本处理这条线。

整体结构应该是这样的:

 Members: [ Member1: { Object: {} }, Member2: { Object: {} }, etc... ] 

提前谢谢了。 此致,
@Medallyon

您的第一行将一个string压入数组,然后将其用作一个对象来添加另一个属性,因为浏览器认为您正在访问该string的字符,所以它会自动失败。

只需使用这个:

 savedVars.Servers[thisServerID]["Members"].push({ name: msg.channel.server.members[i].name, object: {} });