javascript

Differences Between var, let and const.

Var Declaration

Before the introduction of ES6 in 2015, var was the go-to way to declare variables in Javascript.

Example:

var a;
a = 5;
console.log(a) //5

But because variable declarations are processed before any code is executed, declaring a variable anywhere in the code is equivalent to declaring it at the top.

This also means that a variable can appear to be used before it is declared.

This behaviour is called “hoisting.”

Example

console.log(bar); //undefined
var bar = 22;
console.log(bar) //22
bar = 33;
console.log(bar) //33

Let Declaration

“let” is one of the ES6 additions to Javascript.

When you use this type of declaration, you are saying you want the variable to be reassigned but not to be redeclared.

Example:

let a = 3;
console.log(a) //3
let a = 5;
console.log(a) //Identifier 'a' has already been declared

//But if we reassign like so
a = 6;
console.log(a) //6

Const Declaration

‘const’ is also an ES6 addition.

When you use const to declare a variable, you are saying that you don’t want that variable to be reassigned or be redeclared.

Example:

const a = 33;
console.log(a) //33
const a = 34;
console.log(a) //Identifier 'a' has already been declared

//Even if we reassign
a = 35;
console.log(a) //Assignment to constant variable

In Summary …

  1. A var type variable declaration can be both be redeclared and reassigned.
  2. A let type declaration can only be reassigned but not redeclared.
  3. A const type declaration can neither be redeclared or reassigned.
codeflare

Latest tech news and coding tips.

Recent Posts

Backpressure in Node.js

Backpressure is a flow-control mechanism that prevents a fast data producer from overwhelming a slower data…

2 weeks ago

JavaScript Collections

JavaScript collections are data structures used to store, organize, retrieve, and manipulate groups of values. Choosing…

2 weeks ago

Context Poisoning Explained

Context poisoning is a technique where an attacker deliberately places misleading, malicious, or irrelevant information into…

2 weeks ago

Common React Errors

React makes building user interfaces easier, but certain errors appear repeatedly, especially when working with…

4 weeks ago

C Programming Cheat Sheet

The C programming language is a foundational, general-purpose computer programming language created by Dennis Ritchie at Bell Labs in 1972. Originally developed to…

4 weeks ago

Homebrew Tutorial

What Is Homebrew? Homebrew is a package manager for macOS and Linux that makes it easy to…

4 weeks ago