我最近開始從Eloquent Javascript學習Javascript,直到數據結構的方式。爲什麼這個Javascript函數不能反轉數組?
有一個編碼練習如下
寫兩個功能,reverseArray和reverseArrayInPlace。第一個reverseArray將一個數組作爲參數,並生成一個具有相反元素的新數組。第二個reverseArrayInPlace函數完成reverse方法的作用:它修改給定的數組作爲參數,以便反轉它的元素。既不可以使用標準的反向方法。
這裏是我的代碼
/*
* Create a Function reverseArray which returns a new array with the reversed array
* Create another Function reverseArrayInPlace() which modifies the ORiginal Array .
*/
function reverseArray(array) {
var reversed = [];
for (var i = 0; i < array.length; ++i) {
reversed[i] = array[array.length - (i + 1)];
}
return reversed;
}
function reverseArrayInPlace(array) {
var temp = 0;
for (var i = 0; i < array.length; ++i) {
temp = array[i];
array[i] = array[array.length - (i + 1)];
array[array.length - (i + 1)] = temp;
}
}
// Test Case
var ar = [10, 9, 8, 7, 6];
console.log(reverseArray(ar));
// Reverse the Array
reverseArrayInPlace(ar);
console.log(ar);
的reverseArray()函數它的工作做好,返回反陣,但reverseArrayInPlace()不工作。
我做錯了什麼?
規範聲明不返回任何內容,然後更改數組。 –
對不起,我編輯它 – CoolLife
如果你想你不需要返回,但你可以取代控制檯的回報。日誌(陣列)和它的工作 – CoolLife