我在javascript中有一个多维数组,jsfiddel 请检查以下代码。有些像这样的东西在php中运行但不是在javascript中,这可以在javascript中使用。
<script>
var mydata = {'test' : 'testing'};
var mydata2 = {'test2' : mydata};
var myvar = 'test2';
// This one is working
alert(mydata2.test2.test);
// but this is not working
alert(mydata2.myvar.test);
</script>
答案 0 :(得分:0)
您需要bracket notation:
alert(mydata2[myvar].test);
// ^ ^
括号符号
get = object[property_name]; object[property_name] = set;
property_name
是一个字符串。该字符串不必是有效的标识符;它可以有任何价值,例如“1foo”,“!bar!”,甚至是“”(空格)。
var mydata = { 'test': 'testing' },
mydata2 = { 'test2': mydata },
myvar = 'test2';
document.write(mydata2.test2.test + '<br>');
document.write(mydata2[myvar].test);