我希望改进我为阵列反转写的函数。我有兴趣编写自己的练习,我想出了这个:
function rArray(array){
var temp = [];
var len = array.length - 1;
for(i = len, index = 0 ; i >= 0; i--, index++){
temp.push(array[i]); // temp[index] = array[i];
}
return temp;
}
我期待1.)提高速度,两个,通过减少占地面积来创建更高效的功能,我想做一个破坏性的反转功能。这可以用for循环完成还是我必须使用while()?感谢您的投入。
答案 0 :(得分:3)
你可以摆脱index
,因为你没有使用它。
或者您可以预先分配temp
var temp = new Array(len);
但是,您无法同时执行这两项操作,因为您需要index
添加到预先分配的temp
。您可以进行一些实验,看看预分配的长度变得更合适(我猜:几百万)。