Sometimes you want to create a new array from an existing array.
The simplest way is to use the spread operator:
const fruits = ['banana', 'pear', 'apple']
const morefruits = [...fruits]
console.log(morefruits)
//[ 'banana', 'pear', 'apple' ]
How does it work? When we use ...fruits
we basically expand the content of fruits
. Since we enclosed that in the array literal syntax []
, we’ll end up creating a new array morefruits
, with the original content of fruits
.
Now we can modify the morefruits
array without affecting in any way the original fruits
array.
Important: note that this only works with primitive types. When you store objects in the array, things change, because you are storing the object reference, not its content.
You’ll see more about this when we’ll talk about objects.