閱讀有關Javascript數組和他們的方法的互聯網上,我發現了一些東西,我不明白髮生了什麼。我是專門唸叨Array.reverse()方法:爲什麼我的變量取決於它們是數組還是整數?
var numbers = [60, 50, 20, 30];
var value = numbers.reverse();
console.log(numbers); // [30, 20, 50, 60]
console.log(value); // [30, 20, 50, 60]
什麼困惑我這是爲什麼變量「數字」的價值在這裏改變了嗎?
我很困惑,因爲同樣的將不是真實的位置:
var number = 3;
var value = number * 2;
console.log(number); // 3
console.log(value); // 6
我在我處理數組第一個例子中實現,並在第二隻整數。我不明白爲什麼在變量「value」上執行一個函數時變量「number」的值會被修改。但是在第二個例子中沒有修改它。這裏有什麼不同?
'reverse()'改變數組 – kukkuz
這裏的關鍵是每個規格的反轉操作就緒並返回對源數組的引用。雖然我覺得這是一個不幸的設計選擇,但其根源在於你有兩個引用一個數組對象的變量。 – PMV