Gli accessori di oggetti JavaScript vengono utilizzati per accedere e aggiornare gli oggetti e due parole chiave utilizzate per questa funzione sono getter e l'altra è il setter. JavaScript ha introdotto i getter e i setter in ES5 nel 2009.
Vedremo cosa sono i getter e i setter e come utilizzarli in JavaScript in questo tutorial e esaminare il motivo per cui dovresti usare i metodi GET o Imposta di JavaScript. A parte questo, discuteremo del oggetto.DefineProperty () anche. Alla fine, illumineremo un po 'di luce su cui il browser supporta il set e ottenere metodi. Quindi iniziamo.
Ottieni una parola chiave
Il metodo GET viene utilizzato per recuperare un valore, come suggerisce il nome e nel mondo tecnico, può essere definito come un legante di una proprietà dell'oggetto a una funzione che viene chiamata quando la proprietà è desiderata. Non possiamo ottenere il valore fino a quando non accederemo al metodo. Tuttavia, definiamo in anticipo la proprietà dell'oggetto.
Esempio:
const player =
Nome: "Hazard",
Club: "Chelsea",
Shirtno: 10,
get clubname ()
Restituisci questo.club;
;
Avviso (giocatore.clubname);
In questo esempio, abbiamo usato il Proprietà ClubName Per ottenere il valore della proprietà del club.
Imposta la parola chiave
È l'opposto della parola chiave. Viene utilizzato per impostare un valore. Nel mondo tecnico, può essere definito come un legante di una proprietà oggetto a una funzione quando vogliamo impostare una proprietà.
Esempio:
const player =
nome: "",
Club: "Chelsea",
Shirtno: 10,
// Impostazione di un nome giocatore
Set setName (setName)
Questo.name = setName ;;
;
// Passing/Impostazione del nome Proprietà oggetto I-E usando un setter
giocatore.setName = "Mount";
// Vediamo i dati tramite un avviso
Avviso (giocatore.nome);
In questo esempio, abbiamo creato prima un oggetto. In quell'oggetto, abbiamo creato un metodo set utilizzando la parola chiave set in cui stiamo impostando il nome del giocatore che viene passato ad esso. Dopo l'oggetto, impostiamo il nome del giocatore e quindi abbiamo visualizzato il risultato usando un avviso.
Funzione vs geters
Ormai devi pensare, non sono gli stessi, beh la risposta è sì e no. Spieghiamo questo usando esempi:
Funzione di esempio:
const player =
Nome: "Hazard",
Club: "Chelsea",
Shirtno: 10,
myfunc: function ()
Restituisci questo.nome+"gioca per"+questo.club;
;
Avviso (giocatore.myfunc ());
Esempio getter:
const player =
Nome: "Hazard",
Club: "Chelsea",
Shirtno: 10,
get myfunc ()
Restituisci questo.nome+"gioca per"+questo.club;
;
Avviso (giocatore.myfunc);
Nell'esempio della funzione stiamo ottenendo il myfunc () come una funzione I-E Player.myfunc (). Tuttavia, nell'esempio di Getter, stiamo accedendo al Proprietà I-E Player.myfunc (). Ora sappiamo che la sintassi di Getter è più facile e leggibile della funzione.
Oggetto.DefineProperty () in JavaScript
IL Oggetto JavaScript.DefineProperty () viene utilizzato per aggiungere getter e setter. Ci vogliono tre argomenti e la sintassi di Oggetto.DefineProperty () È:
Oggetto.DefineProperty (ObjectName, PropertyName, ObjectDescriptor)
Il primo argomento è il nome dell'oggetto, il secondo è il nome della proprietà e il terzo argomento è una descrizione dell'oggetto.
Per esempio:
// Definisci un oggetto
const player =
Nome: "Eden"
// Ora otteniamo una proprietà di un oggetto
Oggetto.DefineProperty (Player, "GetName",
get: function ()
Restituisci questo.nome;
);
// Ora impostiamo la proprietà di un oggetto
Oggetto.DefineProperty (Player, "SetName",
set: function (val)
Questo.nome = val;
);
console.registro (giocatore.nome);
// Diamo al giocatore un nome completo
giocatore.setName = "Hazard";
console.registro (giocatore.nome);
In questo esempio, in primo luogo, abbiamo definito un oggetto. Dopo quello usando Oggetto.DefineProperty () impostiamo il setter e il getter. Ora quando consolidiamo per la prima volta.Registra il nome del giocatore è "Eden". Ma quando impostiamo il nome usando il setter, il nome del giocatore cambia in pericolo come set da noi.
È vero che quando utilizziamo i gettici e i setter, JavaScript garantisce una migliore qualità dei dati.
Per esempio:
// Creazione di un oggetto
const player =
Nome: "Hazard",
Club: "Chelsea",
Shirtno: 10,
get myfunc ()
Restituisci questo.nome+"gioca per"+questo.club.tolowerCase ();
;
// Utilizzo dei dati di visualizzazione
Avviso (giocatore.myfunc);
In questo esempio, abbiamo usato il nome e la proprietà del club del giocatore di oggetti. L'abbiamo convertito in maiuscolo e minuscolo e restituito quel valore. La soluzione sembrava così:
Perché utilizzare getter e setter?
Quali browser lo supportano?
Microsoft Edge | musica lirica | Safari | Mozilla Firefox | Google Chrome |
---|---|---|---|---|
9.0 e sopra | SÌ | SÌ | SÌ | SÌ |
Conclusione
Abbiamo imparato quasi tutto sui valutatori JavaScript che sono metodi ottengono e impostati in JavaScript in questo post. Per andare in un po 'di profondità abbiamo anche spiegato quale oggetto.DefineProperty () è. Oltre a ciò, abbiamo discusso dei professionisti dell'utilizzo dei valutatori in JavaScript e che i browser supportano i valutatori. Utilizzando i valutatori, uno sviluppatore fa il suo codice eseguire azioni dietro le quinte e protegge i dati. Poiché ha una sintassi più semplice, rende anche il nostro codice più pulito.