Skip to main content

JavaScript fundamentals

  • Variables: Declaration / assignment / scope
  • Data types: String / Number / Boolean / Array / Object / Null / Undefined / Symbol / bigInt
  • Operator: Arithmetic / Assignment / Comparison / Logic / Bitwise
  • Conditional: If / Else / Switch
  • Loop: For / While / Do While / For In / For Of
  • Function: Declaration / Expression / Arrow / Callback

Variables​

Declaration variables​

let name;

Assignment variables​

name = "ATC";

Declaration and assignment combined:

let name = "ATC";

Variable scope​

The scope of a variable is the area of ​​code in which it can be accessed.

In JavaScript, variables can be declared in 4 different ways, each with a different scope:

var

var is function-scoped, not block-scoped. A top-level var in a classic script may also create a global property, unlike top-level declarations in an ES module. var allows redeclaration; prefer let and const for explicit scope.

let and const

These declarations are block-scoped, meaning they are limited to the blocks in which they are defined.

If you declare a variable with let or const inside a for loop, for example, it will not be accessible outside of that loop.

A const binding cannot be reassigned, but an object referenced by it can still be mutated. let allows reassignment.


Data Types​

One of the most fundamental aspects of programming is understanding data types. In JavaScript, each value belongs to a specific data type.

String

  • Description: Sequences of characters used to represent text.
let phrase = "phrase totalement random";

Number

  • Description: Represents both integers and floating point numbers.
let age = 25;
let prix = 19.99;

Boolean

  • Description: Represents a true (true) or false (false) value.
let estMajeur = true;

Array

  • Description: Structures used to store multiple values ​​in a single variable.
let fruits = ["pomme", "banane", "cerise"];

Object

  • Description: Collections of properties, represented by a key and a value.
let voiture = {
marque: "Toyota",
modèle: "Corolla",
année: 2020,
};

Null

  • Description: Represents the intentional absence of value.
let data = null;

Undefined

  • Description: An uninitialized variable has the value undefined.
let test;
console.log(test); // Affiche "undefined"

Symbol

  • Description: A unique, immutable data type.
const sym1 = Symbol("description");

bigInt

  • Description: Allows you to represent integers larger than 2^53 - 1.
const bigNumber = 1234567890123456789012345678901234567890n;

Operators​

Operators perform actions on variables and values. They are the essential tools for manipulating data.

Arithmetic:

  • Example: +, -, *, /, %

Assignment:

  • Example: =, +=, -=, *=, /=

Comparison:

  • Example: ==, ===, !=, !==, >, <, >=, <=

Logic:

  • Example: &&, ||, !

Bitwise:

  • Example: &, |, ^, ~, <<, >>, >>>

** Conditional Structures**​

Conditional structures allow you to execute blocks of code based on certain conditions.

If

if (condition) {
// code à exécuter si la condition est vraie
}

Else

if (condition) {
// code si la condition est vraie
} else {
// code si la condition est fausse
}

Switch

switch (expression) {
case x:
// code à exécuter si expression === x
break;
case y:
// code à exécuter si expression === y
break;
default:
// code à exécuter si expression ne correspond à aucune case
}


Curls​

Loops are used to repeatedly execute a block of code.

For

for (initialisation; condition; mise à jour) {
// code à répéter
}

While

while (condition) {
// code à répéter tant que la condition est vraie
}

Do While

do {
// code à répéter
} while (condition);

For In

for (let cle in objet) {
// code pour chaque propriété de l'objet
}

For Of

for (let element of iterable) {
// code pour chaque élément de l'itérable (e.g., array)
}


Functions​

Functions are blocks of code designed to perform a specific task.

Statement

function nomDeLaFonction(parametres) {
// corps de la fonction
}

Expression

const maFonction = function (parametres) {
// corps de la fonction
};

Arrow

const maFonction = (parametres) => {
// corps de la fonction
};

Callback

  • Description: A function passed as an argument to another function to be executed after the latter has finished.
function saluer(callback) {
console.log("Bonjour");
callback();
}

saluer(function () {
console.log("Au revoir");
});