我有以下for循环:
nth-child
我希望对象名称等于for (var i = 2; i < 7; i++) {
if (cookieJSON.Cases.mdata+i.toString() == undefined)
return i;
}
或cookieJSON.Cases.mdata2
或cookieJSON.Cases.mdata3
,依此类推。
我怎样才能让它发挥作用?
答案 0 :(得分:0)
使用括号表示法:
for (var i = 2; i < 7; i++) {
if (cookieJSON.Cases["mdata" + i] == undefined)
return i;
}
在JavaScript中,您可以使用点表示法和属性名称文字(foo.bar
)或括号表示法和属性名称 string *(foo["bar"]
来访问属性名称)。字符串可以是任何表达式的结果,包括字符串连接。
*在ES6中,括号中的内容也可以是Symbol
,但这与您的问题无关。
答案 1 :(得分:0)
您可以将键放在方括号([]
)之间,以便从字符串中形成它:
cookieJSON.Cases['mdata' + i]
答案 2 :(得分:0)
属性访问器通过使用点表示法或括号表示法提供对对象属性的访问。
<强>语法强>
object.property
object["property"]
E.g: -
for (var i = 2; i < 7; i++) {
if (cookieJSON.Cases["mdata" + i] == undefined)
return i;
}
此处提供更多信息:Dot Notation vs Brackets