javascript - 在mootools或javascript中动态创建对象

标签 javascript object mootools

我不确定我是否使用了正确的术语来实现我想要做的事情,请原谅。

Mootools More 有一个 Fx.Elements允许您对元素集合进行补间的类。 set该类的方法只接受一个对象并允许我设置原始值,但是我不确定需要补间多少元素,因为 HTML 是动态生成的。

这是我关于我想做的事情的理论:

var n = $$('.element').length; // 5
var myObj = {};
var value = 0;
var i;

for (i = 0; i < n; i++) {
    myObj = {
      i: { property : value }
    }                        
}

console.log(myObj);

//    What I get:
//    Object { i : { property: 0 } }

//    What I would like:
//    Object { 
//      0 : { property : 0 
//      },
//      1 : { property : 0 
//      },
//      2 : { property : 0 
//      },
//      3 : { property : 0 
//      },
//      4 : { property : 0 
//      }
//    }          

显然,上面只设置了对象的 i 属性 5 次。我需要 i 向上迭代。

我希望我的解释比我想象的更好!

最佳答案

使用对象字面量语法时,键始终被视为字符串 - 即使没有引号。除此之外,您每次都会覆盖整个对象。

这段代码可以实现你想要的功能。请注意,我将其更改为 i < n因为你会得到 i = 5在最后一个循环中,它不适合您发布的示例。

for(var i = 0; i < n; i++) {
    myObj[i] = {
        property: value
    }
}

关于javascript - 在mootools或javascript中动态创建对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10993386/

相关文章:

python - 在 python 中,有没有办法在将对象传递给函数之前知道它是否为 "implements an interface"?

javascript - 为什么构造函数只能返回一个对象?

javascript - Mootools:向导插件

javascript - 喜欢/不喜欢超链接不能以面向对象的方式工作?

javascript - 在 NavigatorIOS 中导航返回 native

javascript - 在Vue中初始化 'marker-animate-unobtrusive'失败

javascript - 如何使用 JavaScript 检查客户端浏览器性能?

javascript - 访问JS对象中的动态嵌套键

javascript - Mootools 中的 outerWidth 等价物

javascript - Javascript 的原生 `instanceof` 运算符和 MooTools 的 `instanceOf` 函数有什么区别?