基本上,我将这个动态创建的对象从我放入数组的PHP脚本发回。我在用户用来选择要查看的内容的工具中存储数组所在的位置,以及我想要获取的对象中的属性。
示例:
Object{
Property1: string
Property2: Int
Property3: Object{
innerObjProperty1: Array
innerObjProperty2: string
}
Property4: Object{
innerObjProperty1: Array
innerObjProperty2: string
}
Property5: Object{
innerObjProperty1: Array
innerObjProperty2: string
}
}
那将是数组中的一个对象
array={object1, object2}
该数组根据用户输入动态填充。
现在,如果我想从object1中获取数组中的innerObjProperty1,我知道我可以轻松地做到
array[object1].Property3.innerObjProperty1
但问题是,由于它是基于用户的,我在数组中的哪一点以及选择哪个属性取决于用户。内部对象内部的值将始终相同(innerObjProperty1,因为它是要查看的值的数组),但对象的哪个属性取决于选择框。
我有选择设置,其中有一个id绑定到它们有阵列位置和属性名称,但我知道没有简单的方法来快速选择基于变量的对象。例如:
var theSplit= $(this).attr("id").split("|");
var arrayItem = theSplit[0];
var objProperty = theSplit[1];
alert(array[arrayItem].objProperty.innerObjProperty1;
永远不会奏效。有没有简短的方法?或者我应该使用函数循环遍历属性的每个项目以找到等于objProperty的那个?对不起,如果它看起来很简单,但我觉得我宁愿用任何简短的手来达到它,如果可能的话,我想不出一个。循环遍历数组中的对象并不太难,只想查看是否有一个更简单的方法,使用JavaScript或jQuery