What are const and let
- Const is the keyword used to declare a variable where we expect that the value will never change.
- Let is the keyword used to declare a variable where we expect that the value will change at some point in the future.
So let’s have a look at an example. In the ES5 code below we have a few variables describing a person where we would use var to declare all the variables.
// ES5 var name = 'Billy'; var dob = '01/01/1990'; var age = 30; var occupation = 'Web Developer';
For our first variable, name, we’d expect that it is extremely unlikely that someone’s name will change. Since we expect the value for name will never change, we would use const instead of var.
For the dob variable, the person’s date of birth will never change so we’ll use const again.
For age, we can see that Billy is currently 30 years old and we know that next year Billy will be 31. Since we expect the age variable to change we’ll use let.
Billy’s current occupation is a Web Developer. If Billy stays at his current place of employment we’d hope Billy will eventually be promoted to a Senior Web Developer. So since we expect Billy’s occupation to be updated at some point in the future, we’ll use let.
// ES6 const name = 'Billy'; // Billy will always be called Billy const dob = '01/01/1990'; // Billy will always be born January 1st, 1990 let age = 30; // Billy will increase in age every year let occupation = 'Web Developer'; // Billy will be promoted to Senior Web Developer // A few years later… // We don’t need to use ‘let’ again once the variable has been declared age = 34; occupation = 'Senior Web Developer';
From the code above, we can see that let acts very similar to var as it can be changed over time. However, once a variable has been declared with const we’ll be thrown an error is we try to update that variable.
Why bother using const/let
The use of const and let is a quality of life improvement to your codebase.
It will let future you and other developers to be able to quickly glance at variables and instantly be able to know if those variables will be updated later in the code or will always be the same.
Friday wins Gold for Best Small Agency at the 2020 DMA Awards
We are delighted to announce that Friday has been awarded Best Small Agency (15 or fewer employees) at the 2020 DMA Awards in Dublin.
WordPress: The Gutenberg Controversy
Gutenberg aims to replace the old CMS text editor WordPress user’s have come to know and love with these new movable blocks. Let’s take a look at what went wrong and if there’s any hope for Gutenberg’s future.
CodePen Challenge: Gangnam Style
For this week's challenge, we make the shift from MTV to YouTube with the first video to get 1 billion views: "Gangnam Style" by Psy. Love it or hate it, if you were online in 2012 you definitely saw it. And you can't deny it's got some great colors!
Template strings (or template literals) don’t offer much in the way of new functionality but instead make some quality of life improvements to our syntax.