Fermer

Les fonctions Javascript

Les fonctions sont une suite d’instructions effectuant une tâche ou calculant une valeur. Pour utiliser une fonction, il faut préalablement l’avoir définie.

Cet article fait suite aux tableaux en Javascript.

Déclarer une fonction

Une fonction est définie en utilisant le mot clef function, suivi du :

  • nom de la fonction
  • facultativement d’une liste d’arguments, entre parenthèses et séparés par des virgules
  • des instructions de la fonction, entre accolades, { }

Déclaration d’une fonction sans arguments

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
function direBonjour() {
console.log("Bonjour");
}
direBonjour();
function direBonjour() { console.log("Bonjour"); } direBonjour();
function direBonjour() {
    console.log("Bonjour");
}
direBonjour();

Déclaration d’une fonction avec arguments

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
function direBonjourPersonne(prenom, nom) {
console.log(`Bonjour ${prenom}, ${nom})`);
}
direBonjourPersonne("John", "Doe");
function direBonjourPersonne(prenom, nom) { console.log(`Bonjour ${prenom}, ${nom})`); } direBonjourPersonne("John", "Doe");
function direBonjourPersonne(prenom, nom) {
    console.log(`Bonjour ${prenom}, ${nom})`);
}
direBonjourPersonne("John", "Doe");

Les fonctions flechées

Les même fonctions, avec une autre syntaxe : les fonctions flechées

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
const direBonjour = () => console.log("Bonjour");
direBonjour();
const direBonjourPersonne = (prenom, nom) =>
console.log(`Hello ${prenom}, ${nom}`);
direBonjourPersonne("John", "Doe");
const direBonjour = () => console.log("Bonjour"); direBonjour(); const direBonjourPersonne = (prenom, nom) => console.log(`Hello ${prenom}, ${nom}`); direBonjourPersonne("John", "Doe");
const direBonjour = () => console.log("Bonjour");
direBonjour();

const direBonjourPersonne = (prenom, nom) =>
    console.log(`Hello ${prenom}, ${nom}`);
direBonjourPersonne("John", "Doe");

Parcourir un tableau avec une fonction

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
let departements = [
["Oise", "60", "Hauts-de-France"],
["Haute-Saône", "70", "Bourgogne-Franche-Comté"],
["Paris", "75", "Île-de-France"],
["Bouches-du-Rhône", "13", "Provence-Alpes-Côte d'Azur"],
["Gironde", "33", "Nouvelle-Aquitaine"],
["Rhône", "69", "Auvergne-Rhône-Alpes"],
["Aude", "11", "Occitanie"],
["Loire-Atlantique", "44", "Pays de la Loire"],
["Hérault", "34", "Occitanie"],
["Morbihan", "56", "Bretagne"],
["Alpes-Maritimes", "06", "Provence-Alpes-Côte d'Azur"],
["Var", "83", "Provence-Alpes-Côte d'Azur"],
["Nord", "59", "Hauts-de-France"],
["Haut-Rhin", "68", "Grand Est"],
["Vaucluse", "84", "Provence-Alpes-Côte d'Azur"],
["Charente-Maritime", "17", "Nouvelle-Aquitaine"],
["Seine-Maritime", "76", "Normandie"],
["Pyrénées-Atlantiques", "64", "Nouvelle-Aquitaine"],
["Isère", "38", "Auvergne-Rhône-Alpes"],
["Pas-de-Calais", "62", "Hauts-de-France"]
];
function affiche(departementsArray) {
departementsArray.forEach(function(dpt) {
console.log("Département " + dpt[1] + " - " + dpt[0] + " | " + dpt[2]);
});
}
affiche(departements);
let departements = [ ["Oise", "60", "Hauts-de-France"], ["Haute-Saône", "70", "Bourgogne-Franche-Comté"], ["Paris", "75", "Île-de-France"], ["Bouches-du-Rhône", "13", "Provence-Alpes-Côte d'Azur"], ["Gironde", "33", "Nouvelle-Aquitaine"], ["Rhône", "69", "Auvergne-Rhône-Alpes"], ["Aude", "11", "Occitanie"], ["Loire-Atlantique", "44", "Pays de la Loire"], ["Hérault", "34", "Occitanie"], ["Morbihan", "56", "Bretagne"], ["Alpes-Maritimes", "06", "Provence-Alpes-Côte d'Azur"], ["Var", "83", "Provence-Alpes-Côte d'Azur"], ["Nord", "59", "Hauts-de-France"], ["Haut-Rhin", "68", "Grand Est"], ["Vaucluse", "84", "Provence-Alpes-Côte d'Azur"], ["Charente-Maritime", "17", "Nouvelle-Aquitaine"], ["Seine-Maritime", "76", "Normandie"], ["Pyrénées-Atlantiques", "64", "Nouvelle-Aquitaine"], ["Isère", "38", "Auvergne-Rhône-Alpes"], ["Pas-de-Calais", "62", "Hauts-de-France"] ]; function affiche(departementsArray) { departementsArray.forEach(function(dpt) { console.log("Département " + dpt[1] + " - " + dpt[0] + " | " + dpt[2]); }); } affiche(departements);
let departements = [
    ["Oise", "60", "Hauts-de-France"],
    ["Haute-Saône", "70", "Bourgogne-Franche-Comté"],
    ["Paris", "75", "Île-de-France"],
    ["Bouches-du-Rhône", "13", "Provence-Alpes-Côte d'Azur"],
    ["Gironde", "33", "Nouvelle-Aquitaine"],
    ["Rhône", "69", "Auvergne-Rhône-Alpes"],
    ["Aude", "11", "Occitanie"],
    ["Loire-Atlantique", "44", "Pays de la Loire"],
    ["Hérault", "34", "Occitanie"],
    ["Morbihan", "56", "Bretagne"],
    ["Alpes-Maritimes", "06", "Provence-Alpes-Côte d'Azur"],
    ["Var", "83", "Provence-Alpes-Côte d'Azur"],
    ["Nord", "59", "Hauts-de-France"],
    ["Haut-Rhin", "68", "Grand Est"],
    ["Vaucluse", "84", "Provence-Alpes-Côte d'Azur"],
    ["Charente-Maritime", "17", "Nouvelle-Aquitaine"],
    ["Seine-Maritime", "76", "Normandie"],
    ["Pyrénées-Atlantiques", "64", "Nouvelle-Aquitaine"],
    ["Isère", "38", "Auvergne-Rhône-Alpes"],
    ["Pas-de-Calais", "62", "Hauts-de-France"]
];

function affiche(departementsArray) {
    departementsArray.forEach(function(dpt) {
        console.log("Département " + dpt[1] + " - " + dpt[0] + " | " + dpt[2]);
    });
}

affiche(departements);

Parcourir un tableau avec une fonction flechée

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
let departements = [
["Oise", "60", "Hauts-de-France"],
["Haute-Saône", "70", "Bourgogne-Franche-Comté"],
["Paris", "75", "Île-de-France"],
["Bouches-du-Rhône", "13", "Provence-Alpes-Côte d'Azur"],
["Gironde", "33", "Nouvelle-Aquitaine"],
["Rhône", "69", "Auvergne-Rhône-Alpes"],
["Aude", "11", "Occitanie"],
["Loire-Atlantique", "44", "Pays de la Loire"],
["Hérault", "34", "Occitanie"],
["Morbihan", "56", "Bretagne"],
["Alpes-Maritimes", "06", "Provence-Alpes-Côte d'Azur"],
["Var", "83", "Provence-Alpes-Côte d'Azur"],
["Nord", "59", "Hauts-de-France"],
["Haut-Rhin", "68", "Grand Est"],
["Vaucluse", "84", "Provence-Alpes-Côte d'Azur"],
["Charente-Maritime", "17", "Nouvelle-Aquitaine"],
["Seine-Maritime", "76", "Normandie"],
["Pyrénées-Atlantiques", "64", "Nouvelle-Aquitaine"],
["Isère", "38", "Auvergne-Rhône-Alpes"],
["Pas-de-Calais", "62", "Hauts-de-France"]
];
const affiche = (departementsArray) => departementsArray.forEach(dpt =>
console.log(`Département ${dpt[1]} - ${dpt[0]} | ${dpt[2]}`)
);
affiche(departements);
let departements = [ ["Oise", "60", "Hauts-de-France"], ["Haute-Saône", "70", "Bourgogne-Franche-Comté"], ["Paris", "75", "Île-de-France"], ["Bouches-du-Rhône", "13", "Provence-Alpes-Côte d'Azur"], ["Gironde", "33", "Nouvelle-Aquitaine"], ["Rhône", "69", "Auvergne-Rhône-Alpes"], ["Aude", "11", "Occitanie"], ["Loire-Atlantique", "44", "Pays de la Loire"], ["Hérault", "34", "Occitanie"], ["Morbihan", "56", "Bretagne"], ["Alpes-Maritimes", "06", "Provence-Alpes-Côte d'Azur"], ["Var", "83", "Provence-Alpes-Côte d'Azur"], ["Nord", "59", "Hauts-de-France"], ["Haut-Rhin", "68", "Grand Est"], ["Vaucluse", "84", "Provence-Alpes-Côte d'Azur"], ["Charente-Maritime", "17", "Nouvelle-Aquitaine"], ["Seine-Maritime", "76", "Normandie"], ["Pyrénées-Atlantiques", "64", "Nouvelle-Aquitaine"], ["Isère", "38", "Auvergne-Rhône-Alpes"], ["Pas-de-Calais", "62", "Hauts-de-France"] ]; const affiche = (departementsArray) => departementsArray.forEach(dpt => console.log(`Département ${dpt[1]} - ${dpt[0]} | ${dpt[2]}`) ); affiche(departements);
let departements = [
    ["Oise", "60", "Hauts-de-France"],
    ["Haute-Saône", "70", "Bourgogne-Franche-Comté"],
    ["Paris", "75", "Île-de-France"],
    ["Bouches-du-Rhône", "13", "Provence-Alpes-Côte d'Azur"],
    ["Gironde", "33", "Nouvelle-Aquitaine"],
    ["Rhône", "69", "Auvergne-Rhône-Alpes"],
    ["Aude", "11", "Occitanie"],
    ["Loire-Atlantique", "44", "Pays de la Loire"],
    ["Hérault", "34", "Occitanie"],
    ["Morbihan", "56", "Bretagne"],
    ["Alpes-Maritimes", "06", "Provence-Alpes-Côte d'Azur"],
    ["Var", "83", "Provence-Alpes-Côte d'Azur"],
    ["Nord", "59", "Hauts-de-France"],
    ["Haut-Rhin", "68", "Grand Est"],
    ["Vaucluse", "84", "Provence-Alpes-Côte d'Azur"],
    ["Charente-Maritime", "17", "Nouvelle-Aquitaine"],
    ["Seine-Maritime", "76", "Normandie"],
    ["Pyrénées-Atlantiques", "64", "Nouvelle-Aquitaine"],
    ["Isère", "38", "Auvergne-Rhône-Alpes"],
    ["Pas-de-Calais", "62", "Hauts-de-France"]
];

const affiche = (departementsArray) => departementsArray.forEach(dpt =>
    console.log(`Département ${dpt[1]} - ${dpt[0]} | ${dpt[2]}`)
);

affiche(departements);

Appeler une fonction avec des valeurs par défaut des arguments

La fonction afficherMessage prend deux arguments, message et repetition, avec des valeurs par défaut « Bonjour » et 1 respectivement. Vous pouvez appeler cette fonction sans arguments, auquel cas elle utilisera les valeurs par défaut, ou vous pouvez fournir un ou deux arguments pour remplacer les valeurs par défaut.

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
function afficherMessage(message = "Bonjour", repetition = 1) {
for (let i = 0; i < repetition; i++) {
console.log(message);
}
}
afficherMessage(); // Affiche "Bonjour" une fois (valeurs par défaut utilisées)
afficherMessage("Salut"); // Affiche "Salut" une fois (repetition par défaut)
afficherMessage("Hello", 3); // Affiche "Hello" trois fois
function afficherMessage(message = "Bonjour", repetition = 1) { for (let i = 0; i < repetition; i++) { console.log(message); } } afficherMessage(); // Affiche "Bonjour" une fois (valeurs par défaut utilisées) afficherMessage("Salut"); // Affiche "Salut" une fois (repetition par défaut) afficherMessage("Hello", 3); // Affiche "Hello" trois fois
function afficherMessage(message = "Bonjour", repetition = 1) {
    for (let i = 0; i < repetition; i++) {
        console.log(message);
    }
}

afficherMessage(); // Affiche "Bonjour" une fois (valeurs par défaut utilisées)
afficherMessage("Salut"); // Affiche "Salut" une fois (repetition par défaut)
afficherMessage("Hello", 3); // Affiche "Hello" trois fois

Appeler une fonction avec des valeurs par défaut des arguments avec la syntaxe fléchée

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
const afficherMessage = (message = "Bonjour", repetition = 1) => {
for (let i = 0; i < repetition; i++) {
console.log(message);
}
};
afficherMessage(); // Affiche "Bonjour" une fois (valeurs par défaut utilisées)
afficherMessage("Salut"); // Affiche "Salut" une fois (repetition par défaut)
afficherMessage("Hello", 3); // Affiche "Hello" trois fois
const afficherMessage = (message = "Bonjour", repetition = 1) => { for (let i = 0; i < repetition; i++) { console.log(message); } }; afficherMessage(); // Affiche "Bonjour" une fois (valeurs par défaut utilisées) afficherMessage("Salut"); // Affiche "Salut" une fois (repetition par défaut) afficherMessage("Hello", 3); // Affiche "Hello" trois fois
const afficherMessage = (message = "Bonjour", repetition = 1) => {
    for (let i = 0; i < repetition; i++) {
        console.log(message);
    }
};

afficherMessage(); // Affiche "Bonjour" une fois (valeurs par défaut utilisées)
afficherMessage("Salut"); // Affiche "Salut" une fois (repetition par défaut)
afficherMessage("Hello", 3); // Affiche "Hello" trois fois

Laisser une réponse

Votre adresse email ne sera pas publiée. Les champs obligatoires sont indiqués par *