JavaScript Variables

Hello there, JavaScript adventurers! Today, we’re diving into the world of JavaScript variables. Buckle up, because it’s going to be a fun ride!

Introduction

Variables in JavaScript are like little containers where we can store our stuff (data). They’re the backbone of any JavaScript program, and understanding them is like getting a key to the JavaScript city!

Understanding JavaScript Variables

Think of JavaScript variables as little lockers in the vast school of programming. Each locker (or variable) holds something unique inside it. It could be a student’s name, the number of apples a student has, or even a list of the student’s favorite books.

In JavaScript, we have three different types of lockers, or ways to declare variables: var, let, and const. Each one has its own characteristics and use cases.

Here’s an example:

var studentName = "John Doe";
let numberOfApples = 5;
const favoriteBooks = ["Harry Potter", "Lord of the Rings", "To Kill a Mockingbird"];
console.log(studentName);
console.log(numberOfApples);
console.log(favoriteBooks);
JavaScript

In this code, studentName is a variable that holds a string, numberOfApples is a variable that holds a number, and favoriteBooks is a variable that holds an array of strings.

Understanding how to use variables is like getting a master key to the JavaScript city. It’s a fundamental concept that you’ll use in every JavaScript program you write. So, let’s dive in and learn more about these JavaScript “lockers”!

Declaring Variables in JavaScript

In JavaScript, we can declare variables using var, let, or const.

var is the old school way of declaring variables. It’s like that old toy you had as a kid.

let and const, on the other hand, are the new kids on the block. They were introduced in ES6 (a version of JavaScript), and they have some neat features that var doesn’t have.

Here’s how we can declare variables using var, let, and const:

var oldSchool = "I'm old school";
let newKid = "I'm a new kid";
const constantKid = "I never change";
console.log(oldSchool);
console.log(newKid);
console.log(constantKid);
JavaScript

Code Example using var

// Declare a variable using var
var greeting = "Hello, world!";

// Log the greeting to the console
console.log(greeting); // Output: Hello, world!

// Change the value of the greeting variable
greeting = "Hello, universe!";

// Log the new greeting to the console
console.log(greeting); // Output: Hello, universe!
JavaScript

In this code, we first declare a var variable greeting and assign it the value "Hello, world!". Then, we change the value of greeting to "Hello, universe!".

Code Example using let

// Declare a variable using let
let greeting = "Hello, world!";

// Log the greeting to the console
console.log(greeting); // Output: Hello, world!

// Change the value of the greeting variable
greeting = "Hello, universe!";

// Log the new greeting to the console
console.log(greeting); // Output: Hello, universe!
JavaScript

In this code, we first declare a let variable greeting and assign it the value "Hello, world!". Then, we change the value of greeting to "Hello, universe!".

Code Example using const

// Declare a variable using const
const greeting = "Hello, world!";

// Log the greeting to the console
//console.log(greeting); // Output: Hello, world!

// Try to change the value of the greeting variable
greeting = "Hello, universe!"; // This will throw an error

In this code, we first declare a const variable greeting and assign it the value "Hello, world!". If we try to change the value of greeting, JavaScript will throw an error because const variables cannot be reassigned.

When should you use var, let, and const?

As a general rule,

  • Use const when the variable’s value should not change throughout the program.
  • Use let when the variable’s value should change.
  • Only use var if you’re writing code for older browsers that don’t support let and const.

JavaScript Variable Types

In JavaScript, variables can hold different types of data. They can hold numbers, strings (text), objects, and more. It’s like having a backpack that can hold your books, your lunch, and even your little pet hamster!

Here’s an example:

let number = 42; // This is a number
let text = "Hello, world!"; // This is a string
console.log(number);
console.log(text);
JavaScript

Code Example for Variable types

// Number
let age = 25;
console.log(age); // Output: 25

// String
let greeting = "Hello, world!";
console.log(greeting); // Output: Hello, world!

// Boolean
let isAdult = true;
console.log(isAdult); // Output: true

// Object
let person = {
  name: "John Doe",
  age: 30,
  city: "New York"
};
console.log(person); // Output: { name: 'John Doe', age: 30, city: 'New York' }

// Array
let colors = ["red", "green", "blue"];
console.log(colors); // Output: [ 'red', 'green', 'blue' ]

// Null
let empty = null;
console.log(empty); // Output: null

// Undefined
let test;
console.log(test); // Output: undefined

In this code, we declare variables of different types and log their values. We have a number (age), a string (greeting), a boolean (isAdult), an object (person), an array (colors), and two special types: null (empty) and undefined (test).

Assigning Values to Variables

In JavaScript, we use the = operator to assign values to variables. It’s like saying, “Hey variable, hold this value for me!”

Here’s an example:

let greeting = "Hello, world!";
console.log(greeting);
JavaScript

In this code, we’re telling the variable greeting to hold the value "Hello, world!".

Undefined Variables in JavaScript

In JavaScript, if you declare a variable without assigning a value to it, it’s undefined. It’s like a box with nothing in it!

Here’s an example:

let greeting;
console.log(greeting); // Output: undefined
JavaScript

In this code, we declare a variable greeting but don’t assign a value to it. When we log greeting, JavaScript tells us it’s undefined.

Re-declaring Variables in JavaScript

In JavaScript, you can re-declare variables that were declared with var without any issue.

However, if you try to re-declare a variable that was declared with let or const, JavaScript will throw an error. It’s like trying to adopt a pet that’s already been adopted!

Here’s an example:

var pet = "Dog";
var pet;
console.log(pet); // Output: Dog

let greeting = "Hello, world!";
// let greeting = "Hello, universe!"; // This will throw an error
JavaScript

In this code, we re-declare the pet variable that was declared with var, and there’s no issue. But if we try to re-declare the greeting variable that was declared with let, JavaScript will throw an error.

Changing a Variable in JavaScript

In JavaScript, you can change the value of a variable that was declared with var or let. This is known as reassigning a variable. Here’s how you can do it:

let greeting = "Hello, world!";
console.log(greeting); // Output: Hello, world!

// Now, let's change the value of the greeting variable
greeting = "Hello, universe!";
console.log(greeting); // Output: Hello, universe!
JavaScript

In this code, we first declare a let variable greeting and assign it the value "Hello, world!". Then, we reassign greeting to "Hello, universe!".

However, you cannot change the value of a variable that was declared with const. If you try to do so, JavaScript will throw an error:

const greeting = "Hello, world!";
//console.log(greeting); // Output: Hello, world!

// Now, let's try to change the value of the greeting variable
greeting = "Hello, universe!"; // Error: Assignment to constant variable.
JavaScript

In this code, trying to reassign a new value to greeting throws an error because greeting is a const variable. Once a const variable has been assigned, its value cannot be changed.

Undeclared Variables in JavaScript

In JavaScript, if you use a variable without declaring it first, it’s known as an undeclared variable. This is generally considered a bad practice and can lead to unexpected results.

Here’s an example:

x = "Hello, world!";
console.log(x); // Output: Hello, world!
JavaScript

In this code, x is an undeclared variable. We’re using it without declaring it first with var, let, or const. While this code will work, it’s not a good practice. It’s always better to declare your variables before using them.

Starting from JavaScript’s strict mode and ES6, using a variable without declaring it first will throw an error. Here’s an example:

"use strict";
y = "Hello, universe!"; // This will throw an error
console.log(y);
JavaScript

In this code, because we’re in strict mode, using the undeclared variable y will throw an error. This is one of the reasons why it’s a good idea to always declare your variables before using them. It helps prevent errors and makes your code more predictable and easier to debug.

JavaScript Variable Scope

In JavaScript, a variable’s “scope” refers to where it is available in your code. There are two types: global and local.

Global Variable

If a variable is declared outside all functions or curly braces {}, it’s a global variable and can be accessed from anywhere in your code.

Global Scope Example

// This is a global variable
let globalVar = "I'm global!";

function checkScope() {
  console.log(globalVar);
}

checkScope(); // Output: I'm global!
JavaScript

In this example, globalVar is a global variable because it’s declared outside the function. It can be accessed from anywhere in the code, including inside the checkScope function.

Local Variable

But if it’s declared inside a function or a block, it’s a local variable and can only be used within that function or block. It’s like how your house key can’t open your neighbor’s door!

Local Scope Example

function checkScope() {
  // This is a local variable
  let localVar = "I'm local!";
  console.log(localVar);
}

checkScope(); // Output: I'm local!
console.log(localVar); // Error: localVar is not defined
JavaScript

In this example, localVar is a local variable because it’s declared inside the checkScope function. It can only be accessed within that function. If we try to log localVar outside the function, JavaScript throws an error because localVar is not defined in the global scope.

JavaScript Variable Best Practices

When it comes to using variables in JavaScript, here are some best practices:

  • Always declare your variables. It’s good manners!
  • Use const when you know the value won’t change.
  • Use let when the value might change.
  • Only use var if you’re writing code for dinosaurs (old browsers)!

Variable Naming in JavaScript

When it comes to naming variables in JavaScript, there are a few rules and conventions to follow:

  1. Variable names can contain letters, digits, underscores, and dollar signs.
  2. Variable names must begin with a letter.
  3. Variable names can also begin with $ and _, but this is less common.
  4. Variable names are case-sensitive (age, Age, and AGE are three different variables).
  5. Reserved words (like JavaScript keywords) cannot be used as variable names.

Here’s an example:

let myVariable = "Hello, world!";
let $specialVariable = "Hello, universe!";
let _anotherVariable = "Hello, multiverse!";
console.log(myVariable); 
console.log($specialVariable);
console.log(_anotherVariable);
JavaScript

In this code, myVariable, $specialVariable, and _anotherVariable are all valid variable names.

Remember, it’s a good practice to use meaningful variable names. They can make your code easier to read and understand. For example, firstName is a much better variable name than f or fn.

JavaScript Variables Examples

Let’s look at some code examples to see JavaScript variables in action!

// Declaring variables
let name = "John Doe";
const age = 25;

// Using the

variables
console.log("Hello, my name is " + name + " and I am " + age + " years old.");

// Output: Hello, my name is John Doe and I am 25 years old.
JavaScript

In this example, we declare two variables, name and age, and use them in a console log statement.

// Re-declaring a variable
let greeting = "Hello, world!";
greeting = "Hello, universe!";

console.log(greeting);

// Output: Hello, universe!
JavaScript

In this example, we re-declare the greeting variable and change its value.

var vs let vs const in JavaScript

In JavaScript, we have three ways to declare variables: var, let, and const. But what’s the difference between them? Let’s break it down:

var

var is the oldest way to declare variables in JavaScript. It’s function-scoped, which means a variable declared with var is accessible within the function it’s declared in. If it’s not declared in any function, it’s globally scoped.

Here’s an example:

function greet() {
  var greeting = "Hello, world!";
  console.log(greeting); // Output: Hello, world!
}

greet();
console.log(greeting); // Error: greeting is not defined
JavaScript

In this code, greeting is only accessible within the greet function. If we try to log greeting outside the function, we get an error.

let

let is a newer way to declare variables, introduced in ES6. Unlike var, let is block-scoped, which means a variable declared with let is only accessible within the block it’s declared in.

Here’s an example:

if (true) {
  let message = "Hello, universe!";
  console.log(message); // Output: Hello, universe!
}

console.log(message); // Error: message is not defined
JavaScript

In this code, message is only accessible within the if block. If we try to log message outside the block, we get an error.

const

const is also a new way to declare variables, introduced in ES6. Like let, const is block-scoped. But there’s a key difference: a const variable cannot be reassigned.

Here’s an example:

const greeting = "Hello, multiverse!";
console.log(greeting); // Output: Hello, multiverse!

greeting = "Hello, parallel universe!"; // Error: Assignment to constant variable.
JavaScript

In this code, trying to reassign a new value to greeting throws an error because greeting is a const variable.

So, when should you use var, let, and const? As a general rule, use const when the variable’s value should not change throughout the program. Use let when the variable’s value should change. And only use var if you’re writing code for older browsers that don’t support let and const.

Wrapping Up

And that’s a wrap on JavaScript variables! Remember, variables are like containers for storing data. We can declare them using var, let, or const, and they can hold different types of data. Understanding variables is a crucial step in mastering JavaScript, so keep practicing!

Frequently Asked Questions (FAQ)

  1. What is a variable in JavaScript?

    A variable is a named storage for data. We can use variables to store data in our JavaScript code.

  2. How do I declare a variable in JavaScript?

    You can declare a variable using var, let, or const, followed by the variable name.

  3. What is the difference between var, let, and const?

    var is the old way of declaring variables. let and const are newer and have some additional features. let allows you to declare variables that are limited to the scope of a block statement, while const allows you to declare variables whose values are never intended to change.

  4. What types of data can a variable hold?

    A variable can hold different types of data, such as numbers, strings (text), objects, and more.

  5. What is the scope of a variable?

    The scope of a variable refers to where it is available in your code. Variables can be either global or local.

Happy coding, folks! Remember, practice makes perfect. Keep playing around with variables and you’ll be a JavaScript pro in no time!

Scroll to Top