【问题标题】:Increment the name of variable增加变量名
【发布时间】:2011-12-05 13:21:29
【问题描述】:

基本上我想增加变量的名称。执行此操作的正确语法是什么?

for (i=0; i<5; i++) {
    eval("var slider_" + i);

    var slider_+i = function(){
    //some code
}

dojo.addOnLoad(slider_+i);

【问题讨论】:

    标签: javascript loops variables increment


    【解决方案1】:

    这样做的正确方法是使用对象或数组。这应该有效:

    var slider = {}; // object
    // var slider = [] ; // array
    for (i=0; i<5; i++) {
        slider[i] = function() {
            // some code ...
        }
        dojo.addOnLoad(slider[i]);
    }
    

    【讨论】:

      【解决方案2】:

      为什么不直接使用数组?

      var slider = [];
      
      for (i=0; i<5; i++) {
          slider[i] = function(){
              //some code
          }
      
          dojo.addOnLoad(slider[i]);
      }
      

      或者,您可以根据它们所包含的对象来访问它们。假设它们是全局变量(希望不是):

      for (i=0; i<5; i++) {
          window["slider_"+i] = function(){
              //some code
          }
      
          dojo.addOnLoad(window["slider_"+i]);
      }
      

      window["something"] 是访问名为something 的全局变量的另一种方式。

      【讨论】:

        猜你喜欢
        • 2013-10-24
        • 2022-10-01
        • 1970-01-01
        • 2012-06-19
        • 2012-10-02
        • 1970-01-01
        • 1970-01-01
        • 2013-05-30
        • 1970-01-01
        相关资源
        最近更新 更多