使用字符串获取变量

时间:2017-06-08 08:17:09

标签: javascript string

假设我有2个名为fruitbasket01和fruitbasket02的数组。

我想根据我的身份获得果篮,可以是01或02.

var fruitbasket01 = ['apple','orange'];
var fruitbasket02 = ['mango','grapes','peach','potato']
var id1 = '01';
var id2 = '02';

if (condition 1) {
     var string = 'fruitbasket'.concat(id1);
} else {
     var string = 'fruitbasket'.concat(id2);
}

for (var i=0; i<string.length; i++) {
     /** more code here **/
}

我可能知道这种方法有什么问题吗?我该怎样才能解决这个问题。

2 个答案:

答案 0 :(得分:1)

为什么不这样呢

var fruitbasket = { 
    '01': ['apple','orange'], 
    '02': ['mango','grapes','peach','potato']
};

var id1 = '01';
var id2 = '02';

if (condition 1) {
     var string = fruitbasket[id1];
} else {
     var string = fruitbasket[id2];
}

for (var i=0; i<string.length; i++) {
     /** more code here **/
}

此处字符串将是包含所需购物篮项目的数组

答案 1 :(得分:1)

我建议使用object而不是单个数组,因为可以使用密钥访问该对象并且可以轻松维护。

var baskets = {
        '01': ['apple', 'orange'],
        '02': ['mango', 'grapes', 'peach', 'potato']
    },
    id = '02';

console.log(baskets[id]);
.as-console-wrapper { max-height: 100% !important; top: 0; }