我在使用javascript中的变量访问特定对象时遇到问题。这是我正在使用的代码:
global_grouplist = getTenantGroupList();
console.log(global_grouplist)
var currentgroup = getSelectedGroupName();
console.log(currentgroup)
console.log(global_grouplist.currentgroup);
'global_grouplist'返回大量对象,我想从那里获取特定值。如果我取当前组相等的值,并按这样运行:
console.log(global_grouplist.actualvalue)
它给了我想要的东西。但是,当我这样做时。
var currentgroup = actualvalue
console.log(global_grouplist.currentgroup)
这是getTenantGroupList()函数:
function getTenantGroupList(){
return jQuery.parseJSON($.ajax({
url: 'tenantgrouplist.json',
dataType: 'json',
async: false
}).responseText);
}
这是getSelectedGroupName函数:
function getSelectedGroupName(){
var retval = null;
$('#grouplist li a').each(function(){
if($(this).parent().hasClass('group-selected'))
retval=$(this).html();
});
return retval;
}
它不起作用。我有什么基本的东西吗?如果您需要更多信息,请告诉我们!
答案 0 :(得分:2)
使用此行
var currentgroup = actualvalue
您将actualvalue
的当前值提供给currentgroup
,并且不要将这两个元素指向同一属性!
如果您想使用currentgroup
作为变量的占位符,则应使用此代替:
var currentgroup = 'actualvalue';
console.log(global_grouplist[currentgroup]);
这样,您可以将所需属性的名称作为字符串分配给currentgroup
,并使用括号表示法来访问对象的相应属性。
答案 1 :(得分:1)
要以这种方式访问属性,您需要使用数组表示法。试试这个:
var currentgroup = getSelectedGroupName(); // Returns a string like: 'actualvalue';
console.log(global_grouplist[currentgroup])