0Pricing
JavaScript Academy · Leçon

Chaîne des prototypes et notions de base des propriétés propres

Découvrez les bases de la chaîne des prototypes ; distinguez les propriétés propres des propriétés héritées ; utilisez Object.create et définissez des descripteurs simples

Chaîne des prototypes et notions de base des propriétés propres est une leçon JavaScript Academy gratuite sur CoddyKit. Ceci est la leçon 1 sur 2. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage JavaScript Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours JavaScript Academy comprend 2 leçons au total.

Introduction aux prototypes

Objectif : comprendre comment les objets héritent via la chaîne des prototypes et comment distinguer les clés propres des clés héritées.

  • Chaîne des prototypes
  • hasOwn par rapport à in
  • Object.create
  • Descripteurs de base
Chaîne des prototypes et notions de base des propriétés propres — illustration 1

Recherche dans le prototype

Si une clé n’est pas trouvée dans l’objet, JavaScript la recherche dans son prototype (par exemple, Object.prototype).

// A simple object
const user = { name: "Ayla" };

// The prototype is another object used for fallback lookups
const proto = Object.getPrototypeOf(user);

console.log("name:", user.name);
console.log("has toString?", typeof user.toString === "function");
console.log("proto same as Object.prototype?", proto === Object.prototype);
Chaîne des prototypes et notions de base des propriétés propres — illustration 2

Propriétés propres ou héritées

Object.hasOwn(obj, key) renvoie true uniquement pour les clés propres. "key" in obj inclut également les clés héritées.

// Own vs inherited checks
const point = { x: 1 };

// "in" sees own or inherited
console.log("x in point:", "x" in point);
console.log("toString in point:", "toString" in point);

// Only own keys
console.log("hasOwn x:", Object.hasOwn(point, "x"));
console.log("hasOwn toString:", Object.hasOwn(point, "toString"));
Chaîne des prototypes et notions de base des propriétés propres — illustration 3

Bases de Object.create

Object.create(proto) crée un objet qui hérite de proto.

// Use Object.create to set a prototype
const animal = { kind: "animal" };

// pet inherits from animal
const pet = Object.create(animal);
pet.name = "Milo";

console.log("pet name:", pet.name);
console.log("pet kind (inherited):", pet.kind);
console.log("hasOwn kind?", Object.hasOwn(pet, "kind"));
Chaîne des prototypes et notions de base des propriétés propres — illustration 4

Descripteurs (notions de base)

Object.defineProperty peut définir des indicateurs comme writable et enumerable pour une clé.

// Define simple descriptors
const prefs = {};
Object.defineProperty(prefs, "theme", {
  value: "dark",
  writable: false,
  enumerable: true
});

// Try to change (silently fails in non-strict)
prefs.theme = "light";

console.log("theme:", prefs.theme);

// List keys: theme is enumerable
console.log("keys:", Object.keys(prefs));
Chaîne des prototypes et notions de base des propriétés propres — illustration 5

Conseils et liste de vérification

Conseils :

  • Utilisez Object.hasOwn(obj, key) pour vérifier les clés propres.
  • Préférez Object.create(proto) pour créer de petits prototypes.
  • Limitez l’utilisation des descripteurs au début ; les valeurs par défaut conviennent.
Chaîne des prototypes et notions de base des propriétés propres — illustration 6

Quiz sur les propriétés propres ou héritées

Vérification rapide : vérification d’une propriété propre.

Chaîne des prototypes et notions de base des propriétés propres — illustration 7

Récapitulatif

Récapitulatif : le moteur recherche les clés manquantes dans le prototype. Utilisez hasOwn uniquement pour les clés propres, Object.create pour définir un prototype, et les descripteurs pour contrôler les indicateurs de base.

Chaîne des prototypes et notions de base des propriétés propres — illustration 8

Questions Fréquemment Posées

La leçon « Chaîne des prototypes et notions de base des propriétés propres » est-elle gratuite ?

Oui — le texte complet de « Chaîne des prototypes et notions de base des propriétés propres » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours JavaScript Academy, passe à CoddyKit PRO. Le cours JavaScript Academy comprend 2 leçons au total.

Qu'est-ce que j'apprendrai dans « Chaîne des prototypes et notions de base des propriétés propres » ?

Découvrez les bases de la chaîne des prototypes ; distinguez les propriétés propres des propriétés héritées ; utilisez Object.create et définissez des descripteurs simples Tu pratiques JavaScript Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer JavaScript Academy ?

Aucune expérience préalable n'est requise. JavaScript Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 1 sur 2.

Combien de temps prend la leçon « Chaîne des prototypes et notions de base des propriétés propres » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon JavaScript Academy ?

Oui. Chaque leçon JavaScript Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Chaîne des prototypes et notions de base des propriétés propres
  2. Syntaxe des classes (aperçu) : constructeur, méthodes, static, extends
← Retour à JavaScript Academy