从变量值获取对象?

时间:2016-02-29 00:48:13

标签: javascript

这看起来很简单......

我有一个对象

var VR03 = {
    name: "Eternal Growth Ring",
    price: "2500"
}

我有一个函数,我在其中为变量指定一个字符串

function myFunction(){
    js_type = jQuery('#type').val();
    console.log(js_type); //returns "VR03"
}

如何仅使用VR03.name

返回js_type
function myFunction(){
    jQuery('h1').text(?);
}

我已尝试String(js_type).name,但结果与js_type.name

相同

2 个答案:

答案 0 :(得分:1)

基于字符串动态查找对象的一种简单方法是使用另一个对象作为查找表:

var types = {
    "VR03": {
        name: "Eternal Growth Ring",
        price: "2500"
    }
}

function myFunction() {
    var js_type = jQuery('#type').val();
    var type = types[js_type];
    if (type)
        jQuery('h1').text(type.name);
    else
        // Type not found.
}

答案 1 :(得分:0)

在浏览器中,您可以尝试

window[js_type].name

因为你的VR03是一个全局变量。 但将它设置为全局变量只是一个非常糟糕的主意。