0

我在使用 javascript 中的变量访问特定对象时遇到问题。这是我正在使用的代码:

global_grouplist = getTenantGroupList();
console.log(global_grouplist)
var currentgroup = getSelectedGroupName();
console.log(currentgroup)
console.log(global_grouplist.currentgroup);

'global_grouplist' 返回一大堆对象,我想从那里得到一个特定的值。如果我取 currentgroup 将等于的值,并像这样运行它:

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;
    }

这没用。我在这里缺少一些基本的东西吗?如果您需要更多信息,请告诉我!

4

2 回答 2

2

有了这一行

var currentgroup = actualvalue

您正在给出 to 的当前值,actualvalue并且currentgroup不要让两个元素都指向同一个属性!

如果你想currentgroup用作变量的占位符,你应该使用它来代替:

var currentgroup = 'actualvalue';
console.log(global_grouplist[currentgroup]);

这样,您将所需属性的名称作为字符串分配给currentgroup并使用方括号表示法来访问对象的相应属性。

于 2012-11-07T13:19:12.530 回答
1

要以这种方式访问​​属性,您需要使用数组表示法。试试这个:

var currentgroup = getSelectedGroupName(); // Returns a string like: 'actualvalue';
console.log(global_grouplist[currentgroup])
于 2012-11-07T13:18:15.193 回答