【问题标题】:Convert String name into javascript variable name? [duplicate]将字符串名称转换为 javascript 变量名称? [复制]
【发布时间】:2014-05-01 13:46:13
【问题描述】:

示例问题:

变量名:var product5519 = 10;

我可以以字符串的形式得到这个名字,即

var str = "product5519"

有什么方法可以将其转换为变量名,以便我可以使用分配给的值

product5519

我知道解决这个问题的一种方法,即使用eval(str)

如果有其他解决方法请告诉我?

【问题讨论】:

  • eval 这个任务有什么问题?

标签: javascript string variables var


【解决方案1】:

您可以使用关联数组:

var variables = [];
variables['product5519'] = 10;

console.log(variables['product5519']);

【讨论】:

    【解决方案2】:

    你可以这样做:

    window['product5519'] = 'value'

    根据c的情况,拥有一系列产品可能会更好。

    【讨论】:

      【解决方案3】:

      这有点老套,但如果你想创建一个全局变量,你可以这样做:

      var str = "product5519";
      window[str] = value;
      

      然后您可以像这样访问变量:

      window[str];
      window.str;
      str;         // Assuming that there is no local variable already named "str"
      

      【讨论】:

        【解决方案4】:

        一旦您确定创建全局变量是正确的做法,您可以将变量添加到 window 对象,如下所示:

        window[str] = 42;
        

        这是可行的,因为如果变量未在内部范围内定义,则变量查找最终会尝试 window 对象。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2017-07-19
          • 2015-07-26
          • 2013-01-12
          • 1970-01-01
          • 2016-11-20
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多