Variables In JavaScript
Tags: javascript, makstyle119, beginners, variables
Published: 2023-03-26 11:04:44

**Variables** are an essential component of any programming language, including **JavaScript**. In **JavaScript**, **variables** allow you to **store** and **manipulate data** within your **code**. In this **blog post**, we'll explore **variables** in **JavaScript**, including their **syntax**, **data types**, and **[scope](https://medium.com/@makstyle119/scope-in-javascript-eb457c23c594)**.

**Syntax of Variables in JavaScript:**

In **JavaScript**, **variables** are **declared** using the **keywords** ``let``, ``const``, or ``var``, followed by the **variable** name and an **optional initial value**. The ``let`` and ``const`` **keywords** were introduced in **ECMAScript 6 (ES6)** and are the preferred way to **declare variables** in modern **JavaScript**. The ``var`` **keyword** is an older way of **declaring variables** and has some differences in **behavior compared** to ``let`` and ``const``.

Here's an **example** of how to **declare variables** in **JavaScript**:

{% embed https://gist.github.com/makstyle119/a4412cdcc4bac69a5f373bef3d23d7de.js %}

In this **code**, we **declare** three **variables**: ``myVariable``, ``myConstant``, and ``myVar``. ``myVariable`` is **declared** using the ``let`` **keyword** and assigned the value ``5``. ``myConstant`` is **declared** using the ``const`` **keyword** and assigned the value ``"Hello"``. ``myVar`` is **declared** using the ``var`` **keyword** and assigned the value ``true``.

**Data Types in Variables:**

**JavaScript** has several built-in **data types** that can be **stored** in **variables**. **These include:**

- **Numbers:** Numeric values, such as ``5`` or ``3.14``.

- **Strings:** Text values, such as ``"Hello"`` or ``'World'``.

- **Booleans:** Logical values, either ``true`` or ``false``.

- **Objects:** Collections of properties and values, such as ``{name: "John", age: 30}``.

- **Arrays:** Ordered collections of values, such as ``[1, 2, 3]``.

When you **declare** a **variable** in **JavaScript**, you don't have to specify its **data type**. Instead, the **data type** is **automatically** inferred based on the initial value of the **variable**. **For example**, if you **declare** a **variable** and assign it a number **value**, **JavaScript** will **automatically** assume that the **variable** is of the number **data type**.

**Scope of Variables:**

**JavaScript** has two types of **scope**: **global scope** and **local scope**. **Global scope** refers to **variables** that are **declared** outside of any **function** and can be **accessed** from anywhere in the **code**. **Local scope** refers to **variables** that are **declared** inside a **function** and can only be accessed within that **function**.

Here's an **example** of **global** and **local scope** in **JavaScript**:

{% embed https://gist.github.com/makstyle119/e2436deb16e8a4001f47198794c6609f.js %}

In this **code**, we define a **global variable** called ``globalVariable`` and a **function** called ``myFunction`` that **declares** a **local variable** called ``localVariable``. We can access both **variables** within ``myFunction``, but we can only access ``globalVariable`` outside of the **function**. When we try to access ``localVariable`` outside of the **function**, we get a ``ReferenceError`` because the **variable** is not **defined** in the **global scope**.

**Conclusion:**

**Variables** are a **fundamental concept** in **programming** that allows you to **store** and **manipulate data** within your **code**. In **JavaScript**, **variables** are **declared** using the ``let``, ``const``, or ``var`` **keyword**, followed by the **variable** name and an optional **initial value**. **JavaScript** has several built-in **data types** that can be **stored** in **variables**, and the **data type** is **automatically** inferred based on the **initial value** of the **variable**. **Understanding** the **[scope](https://dev.to/makstyle119/scope-in-javascript-4b9n)**