这可能是一个非常基本的问题,但我真的不明白发生了什么。
如果我有几个var
Javascript 中的 s 如下所示:
var cube1 = paper.rect(200, 200, 0, 0);
var cube2 = paper.rect(300, 200, 0, 0);
...
它去cube99
.
为了捕获所有立方体,我在循环中执行以下操作:
for(var i = 0; i < 100; i++) {
cube+i.attr(fill: '#000');
console.log(i);
}
但它向我抛出了一个未定义的错误“多维数据集不可用”。
为什么会发生这种情况?
假设你的变量是全局的,那么它们是window
目的。您可以使用括号表示法 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Member_Operators#Bracket_notation :
window['cube'+i].attr(fill: '#000');
但更好的做法是将所有多维数据集存储在一个数组中:
var cubes = [];
cubes.push(paper.rect(200, 200, 0, 0));
...
for(var i = 0; i < 100; i++) {
cubes[i].attr(fill: '#000');
...
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)