在javascript中动态获取嵌套对象值的更好方法

时间:2013-10-27 18:43:15

标签: javascript json

这是我的功能

var getLocaleDefault = function(settings){
    var defaultLocale = settings.defaultLocale;
    eval('var locale = settings.locale.'+defaultLocale);
    return locale;
}

设置是JSON的JSON.parse() ed对象

{

    "classes": 8,
    "config": "classConfig",
    "locale": {
        "en": "localeEn"
    },
    "defaultLocale": "en"
}

代码是:我试图获取object.locale.en,因为defaultLocaleen。有没有比eval更好的方法来实现我想做的事情?或者这是做这类作品的最好/最有效的方法吗?

1 个答案:

答案 0 :(得分:1)

var locale = settings.locale[defaultLocale];
return locale;

更好,

var getLocaleDefault = function(settings){
    return settings.locale[settings.defaultLocale];
}