Sobes.tech
Junior

Explique plus en détail les valeurs null et undefined en JavaScript.

sobes.tech IA

Réponse de l'IA

  • indéfini:

    • Valeur implicite attribuée aux variables déclarées mais non initialisées.
    • Aussi retournée par des fonctions qui ne retournent pas explicitement de valeur.
    • C'est un type de donnée primitif.
    • L'opérateur typeof retourne la chaîne "undefined".
  • null:

    • Valeur explicite assignée à une variable pour indiquer l'absence de tout objet.
    • Représente l'absence intentionnelle de toute valeur d'objet.
    • C'est un type de donnée primitif, mais l'opérateur typeof retourne incorrectement "object" (bug historique).
Propriété indéfini null
Origine Implicite (par le système) Explicite (par le développeur)
Type Primitif Primitif (bien que typeof - object)
Valeur Variable non initialisée Absence d'objet
// Exemple d'indéfini
let variableNonInitialisee;
console.log(variableNonInitialisee); // undefined

function pasDeValeurDeRetour() {
  // pas de return
}
console.log(pasDeValeurDeRetour()); // undefined
console.log(typeof variableNonInitialisee); // undefined

// Exemple de null
let variableObjet = null;
console.log(variableObjet); // null
console.log(typeof variableObjet); // object (bug historique)