我在php中有一个关联数组,我解析它从中获取json(json_encode)然后我将结果存储在javascript var
var myArray = <?php print json_encode($phpArray); ?>;
现在,当用户点击按钮时,我应该动态地从数组中选择另一个元素,例如,我选择了一个随机的第一个元素:
var an_element = myArray.a2.link;
- 'a2'是主数组中的数组
- 'link'是a2数组中的一个元素。
所以现在当用户按下我的按钮时,我想选择一个随机的其他数组id(例如a5,a9等) 我试过这个:
var randomnumber=Math.floor(Math.random()*101); // choose random number
var newRandomArrayID= "a"+randomnumber;
an_element = myArray.newRandomArrayID.link;
它不起作用,它说myArray.newRandomArrayID未定义。 有人可以帮忙吗? 谢谢
答案 0 :(得分:6)
您需要使用[]
索引来按名称查找属性:
an_element = myArray[newRandomArrayID].link;
否则JS正在寻找newRandomArrayID
上实际上称为myArray
的属性,而不是使用变量的值来查找属性。