JavaScript将字符串转换为变量名称?

时间:2016-05-03 01:20:56

标签: javascript

我有这样的JavaScript:

from elaphe import barcode
text = 'hello world in barcode'
bc = barcode('pdf417', text, options = dict(
         compact = False, eclevel = 5, columns = 13,
         rowmult = 2, rows = 3),
     margin=20, scale=1)

我想循环访问对象“metFital”,以获得“Est”。然后计算“Est”* par。

例如当par =“IMP_TRAV_SP”(循环的第一次迭代)时,我可以得到Est * IMP_TRAV_SP的值。我该怎么写if语句下的东西?

1 个答案:

答案 0 :(得分:0)

eval方式:

不确定您在做什么,我希望您了解eval的不良方面,但这是您将此代码转换为正常工作代码的唯一方法:



var metFital = { "IMP_TRAV_SP": { type: "cont", Est: 0.055 }}
var IMP_TRAV_SP= 20;

var EvalueFital=0
  for (var par in metFital) {
     if (metFital[par].type == "cont") {
            EvalueFital = EvalueFital + ((metFital[par].Est) * eval(par));
        }
};

alert(EvalueFital);




对象括号记法:

如果您不介意我建议,您可以使用对象括号表示法执行此类操作:



var metFital = { "IMP_TRAV_SP": { type: "cont", Est: 0.055 }}
var values = {IMP_TRAV_SP: 20};

var EvalueFital=0
  for (var par in metFital) {
     if (metFital[par].type == "cont") {
            EvalueFital = EvalueFital + ((metFital[par].Est) * values[par]);
        }
};

alert(EvalueFital);