sup*_*ize 0 html javascript variables
这可能是一个非常基本的问题,但我真的不明白发生了什么.
如果我var在Javascript中有几个s,如下所示:
var cube1 = paper.rect(200, 200, 0, 0);
var cube2 = paper.rect(300, 200, 0, 0);
...
Run Code Online (Sandbox Code Playgroud)
它去了cube99.
要捕获所有多维数据集,我在循环中执行以下操作:
for(var i = 0; i < 100; i++) {
cube+i.attr(fill: '#000');
console.log(i);
}
Run Code Online (Sandbox Code Playgroud)
但它给我一个未定义的错误,"立方体不可用".
为什么会这样?
假设您的变量是全局变量,那么它们就是window对象的属性.您可以使用括号表示法:
window['cube'+i].attr(fill: '#000');
Run Code Online (Sandbox Code Playgroud)
但更好的做法是将所有多维数据集存储在一个数组中:
var cubes = [];
cubes.push(paper.rect(200, 200, 0, 0));
...
for(var i = 0; i < 100; i++) {
cubes[i].attr(fill: '#000');
...
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
45 次 |
| 最近记录: |