从动态选择json中的元素

joh*_*ohn 1 javascript jquery parsing json

我在php中有一个关联数组,我解析它从中获取json(json_encode)然后我将结果存储在javascript var中

var myArray = <?php print json_encode($phpArray); ?>;
Run Code Online (Sandbox Code Playgroud)

现在,当用户点击按钮时,我应该动态地从数组中选择另一个元素,例如,我选择了一个随机的第一个元素:

var an_element = myArray.a2.link;
Run Code Online (Sandbox Code Playgroud)

-'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;
Run Code Online (Sandbox Code Playgroud)

它不起作用,它说myArray.newRandomArrayID是未定义的.有人可以帮忙吗?谢谢

mel*_*okb 6

您需要使用[]索引来按名称查找属性:

an_element = myArray[newRandomArrayID].link;
Run Code Online (Sandbox Code Playgroud)

否则JS正在寻找实际调用的属性newRandomArrayID,myArray而不是使用变量的值来查找属性.