Skip to main content

Command Palette

Search for a command to run...

Variables & Data Types in JavaScript

Updated
4 min readView as Markdown

Yesterday, I started my JavaScript journey by understanding what JavaScript is and how it brings websites to life.

Today, I explored one of the most fundamental concepts in programming—Variables and Data Types.

Every JavaScript program, from a simple calculator to a complex web application, relies on variables to store and manage data.

Let's dive in.


What is a Variable?

A variable is a named container used to store data.

Instead of writing the same value repeatedly, we store it in a variable and use it whenever needed.

For example:

let name = "Saurabh";

console.log(name);

Here, name is the variable, and "Saurabh" is the value stored inside it.


Declaring Variables

JavaScript provides three ways to declare variables:

  • var

  • let

  • const


1. var

var age = 22;

var is the older way of declaring variables.

It is function-scoped and allows redeclaration, which can sometimes lead to unexpected behavior.

Today, it's generally avoided in modern JavaScript.


2. let

let city = "Mumbai";

let is block-scoped and allows you to update the value later.

let score = 10;

score = 20;

This is useful when the value needs to change during program execution.


3. const

const country = "India";

A const variable cannot be reassigned.

const pi = 3.14;

// pi = 3.14159 ❌ Error

Use const whenever the value should remain constant.


Difference Between var, let, and const

Feature var let const
Scope Function Block Block
Redeclare ✅ Yes ❌ No ❌ No
Reassign ✅ Yes ✅ Yes ❌ No
Modern Usage Rare Common Preferred

In modern JavaScript, developers mainly use let and const.


What are Data Types?

A data type tells JavaScript what kind of value a variable holds.

JavaScript has two categories:

  • Primitive Data Types

  • Non-Primitive (Reference) Data Types


Primitive Data Types

1. String

Stores text.

let language = "JavaScript";

2. Number

Stores integers and decimal values.

let marks = 95;
let price = 99.99;

3. Boolean

Represents true or false.

let isLoggedIn = true;

4. Undefined

A variable that has been declared but not assigned a value.

let user;

console.log(user);

Output:

undefined

5. Null

Represents the intentional absence of a value.

let selectedUser = null;

6. BigInt

Used for very large integers.

let bigNumber = 123456789012345678901234567890n;

7. Symbol

Used to create unique identifiers.

const id = Symbol("userId");

Symbols are commonly used in advanced JavaScript applications.


Non-Primitive Data Types

The most common non-primitive type is the Object.

const student = {

name: "Saurabh",

age: 22

};

Arrays and functions are also objects in JavaScript.

You'll explore them in detail in upcoming lessons.


The typeof Operator

JavaScript provides the typeof operator to check a variable's data type.

Example:

let age = 22;

console.log(typeof age);

Output:

number

More examples:

typeof "Hello";     // string

typeof true;        // boolean

typeof undefined;   // undefined

typeof {};          // object

Naming Variables

Good variable names improve code readability.

✔ Use meaningful names:

let userName;

const totalPrice;

Avoid unclear names:

let x;

let a1;

Meaningful names make code easier to understand and maintain.


Best Practices

✔ Prefer const by default.

✔ Use let when the value needs to change.

✔ Avoid using var in modern JavaScript.

✔ Choose descriptive variable names.

✔ Use typeof to inspect values while learning.


My Biggest Takeaway

Today, I realized that variables are like labeled containers that help us store and organize information in a program.

Understanding the difference between let, const, and var, along with JavaScript's data types, has given me a strong foundation for writing meaningful code.

Every interactive application starts by storing and working with data—and today, I learned how JavaScript handles that data.

100 Days of Code: My Journey to Becoming a Full Stack Developer

Part 32 of 50

Welcome to my 100 Days of Code journey! In this series, I'll document my daily progress as I learn Full Stack Web Development from the ground up. Every post will cover what I learned, challenges I faced, mistakes I made, and the projects I built. My goal is not just to complete 100 days but to become a better developer through consistency, discipline, and learning in public. Topics I'll cover include: • Git & GitHub • HTML, CSS & JavaScript • React.js • Node.js & Express • MongoDB • APIs • Real-world Projects • AI tools for Developers Whether you're just starting out or revising your fundamentals, I hope this journey helps you learn alongside me. Let's build, learn, and grow together! 🚀

Up next

Operators & Expressions in JavaScript

Yesterday, I learned how JavaScript stores information using variables and different data types. Today, I explored Operators & Expressions, which allow JavaScript to perform calculations, compare valu

More from this blog

T

TheSaurceCode

73 posts

Documenting my journey to becoming a Full Stack Developer through daily blogs, coding challenges, projects, tutorials, and lessons learned. Learn, build, and grow with me