Javascript 更改数组中的项索引

Javascript 更改数组中的项索引,javascript,createjs,sprite-sheet,Javascript,Createjs,Sprite Sheet,我现在有一个图像被切成矩形,然后放在另一个图像上,这样我可以在图1中显示图像。我目前有从左到右和从上到下的动画形状图2。我希望图像以随机方式设置动画,如图3所示。最初,我创建了一个位置数组,我洗牌了它的值,创建了我想要的效果,但这显然也洗牌了图像切片。现在我正在创建一个索引数组并对值进行洗牌。我想用无序索引数组中的新值交换切片图像索引。拼接未达到预期效果 for(i=0;i<100;i++){ var _s = new createjs.Sprite(this._ss);

我现在有一个图像被切成矩形,然后放在另一个图像上,这样我可以在图1中显示图像。我目前有从左到右和从上到下的动画形状图2。我希望图像以随机方式设置动画,如图3所示。最初,我创建了一个位置数组,我洗牌了它的值,创建了我想要的效果,但这显然也洗牌了图像切片。现在我正在创建一个索引数组并对值进行洗牌。我想用无序索引数组中的新值交换切片图像索引。拼接未达到预期效果

 for(i=0;i<100;i++){

    var _s = new createjs.Sprite(this._ss);
        _s.gotoAndStop(i);

    this._container.addChild(_s);

    if((i % 10)===0){
        _ypos += 21;
        _xpos = 34;
    };
    _s.x = _xpos;
    _s.y = _ypos;
    _xpos += 34;

    this._indexArray.push(i);
    this._shapeArr.push(_s);
}

this.shuffleArray(this._indexArray);

for(j=0;j<100;j++){

    this._shapeArr[j]//CHANGE INDEX HERE
}

对于其他试图做类似事情的人,这里是第二个For循环中的修订代码。我发现这个链接帮助我解决了这个问题,所以请查看链接,如果你觉得它有帮助,那么给这个家伙一个+1

 for(j=0;j<100;j++){

    //CHANGED CHILD INDEX HERE
    this._shapeArr.splice(this._indexArray[j],0,this._shapeArr.splice(j,1)[0]);
 }