可能有一个简单的方法,但困扰着我。
我正在尝试Splice
如下二维数组:
removeChild(test[1].splice(currShape, 1));
但不会拼接它,并让我出现以下错误:
Type Coercion failed: cannot convert []@29258d59 to flash.display.DisplayObject.
任何帮助将不胜感激。
可能有一个简单的方法,但困扰着我。
我正在尝试Splice
如下二维数组:
removeChild(test[1].splice(currShape, 1));
但不会拼接它,并让我出现以下错误:
Type Coercion failed: cannot convert []@29258d59 to flash.display.DisplayObject.
任何帮助将不胜感激。
问题是splice
返回一个数组,并且removeChild
需要一个displayObject
.
这行得通吗?
removeChild(test[1].splice(currShape, 1)[0]);
你的电话splice()
实际上是有效的。请注意,splice()方法返回一个Array
包含从原始 中删除的元素Array
。
然后,您将作为参数返回的Array
那个传递给. 它是失败的方法......它期望参数不是 a ,所以它抛出异常。splice()
removeChild()
removeChild()
DisplayObject
Array
您可能可以更改您的代码来执行以下操作,为了清楚起见写在两行:
var removedItems:Array = test[1].splice(currShape, 1);
removeChild( removedItems[0] );