diff --git a/9. ES6/README.md b/9. ES6/README.md index 568817a..b3df80d 100644 --- a/9. ES6/README.md +++ b/9. ES6/README.md @@ -745,47 +745,3 @@ var y = false; console.log(x,y); ``` - -
Note -The reason this is special and new is because we have to -remember that array values are normally passed by reference. -It is also unusual to have an array that is not assigned to a variable - -```JavaScript -// Pass by reference -var a = 1; -var b = 2; - -var originalArray = [a,b]; -console.log('is `a` equal to orginalArray[0]:', a === originalArray[0]);//true - -var newArray = originalArray; - -//will reverse BOTH arrays (because it is actually two references to the same array) -newArray.reverse() - -console.log('This is newArray.reverse():', newArray) -console.log('This is originalArray after newArray has been reversed', originalArray) -console.log('is `a` equal to orginalArray[0]:', a === originalArray[0]);//false -``` - -To make a duplicate array that is not passed by reference, you would have to do something like: - -```JavaScript -var a = 1; -var b = 2; - -var anotherOriginalArray = [a,b]; -console.log('is `a` equal to anotherOrginalArray[0]:', a === anotherOriginalArray[0]);//true - -var trueNewArray = anotherOriginalArray.map(function(e){ - return e; -}); - -console.log('this is trueNewArray', trueNewArray); -trueNewArray.reverse(); -console.log('\nThis is trueNewArray.reverse():', trueNewArray); -console.log('This is anotherOriginalArray after trueNewArray has been reversed', anotherOriginalArray); -console.log('is `a` equal to anotherOriginalArray[0]:', anotherOriginalArray[0] === a); //true -``` -