DEV Community

Cover image for The difference between reassigning and modifying arrays in TypeScript 👨‍💻
Xaypanya Phongsa
Xaypanya Phongsa

Posted on

The difference between reassigning and modifying arrays in TypeScript 👨‍💻

In TypeScript, there is a difference between reassigning and modifying arrays. When you declare an array variable using const, you can modify the elements of the array but you cannot reassign the array to a new value. On the other hand, when you declare an array variable using let, you can both modify the elements of the array and reassign the array to a new value.

To understand the difference between reassigning and modifying arrays, let's take a look at some examples.

🍂 Modifying an Array

When you modify an array, you change the value of one or more elements in the array. This is allowed for arrays declared using const or let. Here's an example:

const myArray = [1, 2, 3];
myArray[0] = 4;
console.log(myArray); // Output: [4, 2, 3]
Enter fullscreen mode Exit fullscreen mode

In this example, we declare an array myArray using const and initialize it with the values [1, 2, 3]. We then modify the value of the first element in the array by assigning it the value 4. The output of console.log(myArray) shows that the first element of the array has indeed been modified to 4.

💫 Reassigning an Array

When you reassign an array, you change the entire array to a new value. This is only allowed for arrays declared using let. Here's an example:

let myArray = [1, 2, 3];
myArray = [4, 5, 6];
console.log(myArray); // Output: [4, 5, 6]
Enter fullscreen mode Exit fullscreen mode

In this example, we declare an array myArray_using _let_and initialize it with the values _[1, 2, 3]. We then reassign the entire array to a new value [4, 5, 6]. The output of console.log(myArray) shows that myArray now contains the new value [4, 5, 6].

⛔ Differences between const and let

When you declare an array using const, you are declaring a constant reference to an array. This means that you cannot reassign the reference to the array to a new value. However, you can still modify the elements of the array.

When you declare an array using let, you are declaring a variable reference to an array. This means that you can both modify the elements of the array and reassign the entire array to a new value.

💖 Conclusion

In TypeScript, it is important to understand the difference between reassigning and modifying arrays. If you need to change the entire array, you should use let. If you only need to change the values of one or more elements in the array, you can use const. By understanding these differences, you can write better and more efficient TypeScript code.

Top comments (2)

Collapse
 
diseyi profile image
Diseyi

A great explanation! this also applies to JavaScript.

Collapse
 
xaypanya profile image
Xaypanya Phongsa

Thanks, and yes, the concepts I explained can definitely be applied to JavaScript as well.