在javascript中创建数组时的奇怪行为
我有以下代码在javascript中创建数组时的奇怪行为,javascript,Javascript,我有以下代码 if(ssnFlag == false){ console.log(userName) userSessions.push({userName : [{"sessionId" : dsid}]}) console.log("pushing::" + JSON.stringify(userSessions[0])) } 输出是 OIC_PLAN_ADMIN_
if(ssnFlag == false){
console.log(userName)
userSessions.push({userName : [{"sessionId" : dsid}]})
console.log("pushing::" + JSON.stringify(userSessions[0]))
}
输出是
OIC_PLAN_ADMIN_OPERATIONS
pushing::{"userName":[{"sessionId":"0000MTEJon9Fs1MLIMK6yf1Ry1Ob0004vf"}]}
请注意,当用户名值为OIC_PLAN_ADMIN_OPERATIONS时,为什么在下一步中,当我希望用户名推动OIC_PLAN_ADMIN_OPERATIONS时,会推动用户名呢?您必须添加一些括号,将其转换为: 如果省略它们,则与以下相同:
{ "userName": /*...*/ }
您必须添加一些括号才能将其转换为: 如果省略它们,则与以下相同:
{ "userName": /*...*/ }
方括号的这种用法叫什么?我从来没有见过在这样的对象键中使用它们。不管怎样,我找到了。谷歌比我想象的要容易。方括号的这种用法叫什么?我从来没有见过在这样的对象键中使用它们。不管怎样,我找到了。谷歌比我想象的要容易。