javascript - array.sort对多个数组进行排序

时间:2015-02-20 14:49:19

标签: javascript arrays sorting

我正在尝试制作一些简单的3D图形。我需要做的一件事就是弄清楚面部的z顺序。我这样做是通过计算飞机到相机的距离来实现的。我把这些数字放在一个数组中。然后我复制它以制作第二个数组。我希望能够对此数组进行排序,并将其与第一个数组进行比较,以找到平面的渲染顺序。但是,当我尝试对第二个数组进行排序时,它也会对第一个数组进行排序!

for(var i = 0; i < faceDist.length; i++)
{
    sortedDist[i] = faceDist[i];

}
sortedDist.sort(sorter);
for(var i = 0; i < sortedDist.length; i++)
{
    drawOrder[i] = faceDist.indexOf(sortedDist[i]);
}

1 个答案:

答案 0 :(得分:0)

你需要创建一个新数组作为第一个的克隆,目前看起来你正在保存对它的引用。

试试这个:

var clone = myArray.slice(0);