0Pricing
JavaScript Academy · Lezione

Catena dei prototipi e basi delle proprietà proprie

Impari le basi della catena dei prototipi; verifichi le proprietà proprie e quelle ereditate; usi Object.create e imposti semplici descrittori.

Catena dei prototipi e basi delle proprietà proprie è una lezione JavaScript Academy gratuita su CoddyKit. Questa è la lezione 1 di 2. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento JavaScript Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso JavaScript Academy include 2 lezioni in totale.

Introduzione ai prototipi

Obiettivo: Vedere come gli oggetti ereditano attraverso la catena dei prototipi e come distinguere le chiavi proprie da quelle ereditate.

  • Catena dei prototipi
  • hasOwn e in
  • Object.create
  • Descrittori di base
Catena dei prototipi e basi delle proprietà proprie — illustrazione 1

Ricerca nel prototipo

Se una chiave non viene trovata nell'oggetto, JavaScript cerca nel suo prototipo (ad esempio, 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);
Catena dei prototipi e basi delle proprietà proprie — illustrazione 2

Proprie o ereditate

Object.hasOwn(obj, key) restituisce true solo per le chiavi proprie. "key" in obj include anche quelle ereditate.

// 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"));
Catena dei prototipi e basi delle proprietà proprie — illustrazione 3

Fondamenti di Object.create

Object.create(proto) crea un oggetto che eredita da 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"));
Catena dei prototipi e basi delle proprietà proprie — illustrazione 4

Descrittori (introduzione)

Object.defineProperty può impostare flag come writable ed enumerable per una chiave.

// 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));
Catena dei prototipi e basi delle proprietà proprie — illustrazione 5

Suggerimenti e checklist

Suggerimenti:

  • Utilizzi Object.hasOwn(obj, key) per verificare le chiavi proprie.
  • Preferisca Object.create(proto) per creare piccoli prototipi.
  • All'inizio mantenga al minimo l'uso dei descrittori: i valori predefiniti sono sufficienti.
Catena dei prototipi e basi delle proprietà proprie — illustrazione 6

Quiz sulle proprietà proprie ed ereditate

Controllo rapido: verifica di una proprietà propria.

Catena dei prototipi e basi delle proprietà proprie — illustrazione 7

Riepilogo

Riepilogo: Il motore cerca le chiavi mancanti nel prototipo. Utilizzi hasOwn solo per le chiavi proprie, Object.create per impostare un prototipo e i descrittori per controllare i flag di base.

Catena dei prototipi e basi delle proprietà proprie — illustrazione 8

Domande Frequenti

La lezione «Catena dei prototipi e basi delle proprietà proprie» è gratuita?

Sì — il testo completo di «Catena dei prototipi e basi delle proprietà proprie» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso JavaScript Academy, passa a CoddyKit PRO. Il corso JavaScript Academy include 2 lezioni in totale.

Cosa imparerò in «Catena dei prototipi e basi delle proprietà proprie»?

Impari le basi della catena dei prototipi; verifichi le proprietà proprie e quelle ereditate; usi Object.create e imposti semplici descrittori. Eserciti JavaScript Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare JavaScript Academy?

Non è richiesta alcuna esperienza precedente. JavaScript Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 1 di 2.

Quanto tempo richiede la lezione «Catena dei prototipi e basi delle proprietà proprie»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione JavaScript Academy?

Sì. Ogni lezione JavaScript Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Catena dei prototipi e basi delle proprietà proprie
  2. Sintassi delle classi (anteprima): constructor, metodi, static, extends
← Torna a JavaScript Academy