【发布时间】:2012-01-09 00:55:44
【问题描述】:
以下代码抛出错误“s.splice is not a function”:
var s = this.paper.set();
s.push(this.paper.rect(10,10,100,100));
s.push(this.paper.rect(10,10,100,100));
s.splice(0,1);
s.clear 也会抛出类似的错误。
我做错了什么?非常感谢。
【问题讨论】:
-
经过额外的研究和实验,我发现我可以进入集合并操纵其
items属性,这是一个包含集合中所有元素的常规JS 数组。虽然不是一个理想或令人满意的解决方案。此外,每当我对items进行修改时,它都会带来必须更新集合的length属性的负担,这会导致数组长度发生变化。就像我说的,不漂亮。 -
1.5.2 似乎没有拼接方法:jsfiddle.net/2YsSy/3,但 2 有:jsfiddle.net/2YsSy/4
-
@oli 谢谢!请将此作为答案发布,以便我接受它作为我接受的答案。