如何排序一个数组?

时间:2016-05-06 17:16:14

标签: javascript arrays sorting

我正在尝试使用以下代码打印出未排序的数组版本和排序版本的数组:

var sortArrayNumber = function(a, b) {
    return a - b;
};

var array = [5, 2, 1044, 3, 126];
var sortedArray = [];

sortedArray = array;

sortedArray.sort(sortArrayNumber);

document.write(array + " and " + sortedArray);

这不是我要使用的实际代码,我只是在测试它。 当我使用jsfiddle测试它时,它会输出

2,3,5,126,1044 and 2,3,5,126,1044

但我希望它输出

5,2,1044,3,126 and 2,3,5,126,1044

那么,我该如何阻止它呢?

BTW,我自学了JavaScript,所以我对它的了解不是很好

1 个答案:

答案 0 :(得分:3)

您需要使用Array#slice

对原始数组的副本应用排序
  

slice()方法将数组的一部分的浅表副本返回到新的数组对象中。

因为排序有效。

sortedArray = array.slice();