Oggetto e costruttori di oggetti in JavaScript?
Nel mondo vivo della programmazione orientata agli oggetti conosciamo già l’importanza delle classi e degli oggetti, ma a differenza di altri linguaggi di programmazione, JavaScript non ha le classi tradizionali come si vede in altri linguaggi. Ma JavaScript ha oggetti e costruttori che funzionano per lo più allo stesso modo per eseguire lo stesso tipo di operazioni.
- I costruttori sono funzioni generali di JavaScript che vengono usate con la parola chiave “new”. I costruttori sono di due tipi in JavaScript cioè i costruttori incorporati (array e oggetti) e i costruttori personalizzati (definiscono proprietà e metodi per oggetti specifici).
- I costruttori possono essere utili quando abbiamo bisogno di un modo per creare un “tipo” di oggetto che può essere usato più volte senza dover ridefinire l’oggetto ogni volta e questo potrebbe essere ottenuto usando la funzione Object Constructor. È una convenzione quella di mettere in maiuscolo il nome dei costruttori per distinguerli dalle funzioni regolari.
Per esempio, considerate il seguente codice:
function Automobile(color) {
this
.color=color;
}
var vehicle1 =
new
Automobile (
"red"
);
La funzione “Automobile()” è un costruttore di oggetti e le sue proprietà e metodi i.e “colore” sono dichiarati al suo interno facendoli precedere dalla parola chiave “this”. Gli oggetti definiti usando un costruttore di oggetti sono poi resi istanti usando la parola chiave “new”.
Quando si chiama new Automobile(), JavaScript fa due cose:
- Crea un nuovo oggetto (istanza) Automobile() e lo assegna a una variabile.
- Imposta la proprietà del costruttore, cioè il “colore” dell’oggetto su Automobile.
Metodo Object.keys()
Il metodo Object.keys() è usato per restituire un array i cui elementi sono stringhe corrispondenti alle proprietà enumerabili trovate direttamente su un oggetto. L’ordine delle proprietà è lo stesso di quello dato dall’oggetto manualmente in un ciclo viene applicato alle proprietà.
Object.keys() prende come argomento l’oggetto di cui devono essere restituite le proprietà proprie enumerabili e restituisce un array di stringhe che rappresentano tutte le proprietà enumerabili dell’oggetto dato.
Applicazioni:
- Object.keys() è usato per restituire le proprietà enumerabili di un semplice array.
- Object.keys() è usato per restituire le proprietà enumerabili di un oggetto simile ad un array.
- Object.keys() è usato per restituire le proprietà enumerabili di un oggetto simile a una matrice con ordinamento casuale delle chiavi.
Sintassi:
Object.keys(obj)
Parametri usati:
- obj : è l’oggetto le cui proprietà enumerabili devono essere restituite.
Return Value:
Object.keys() restituisce un array di stringhe che rappresentano tutte le proprietà enumerabili dell’oggetto dato.
Esempi della suddetta funzione sono forniti di seguito.
Esempi:
Input : var check = ; console.log(Object.keys(check));Output :
Spiegazione: In questo esempio, un array “check” ha tre valori di proprietà e il metodo object.keys() restituisce le proprietà enumerabili di questo array. L’ordine delle proprietà è lo stesso di quello dato dall’oggetto manualmente.
Input : var object = { 0: 'x', 1: 'y', 2: 'z' }; console.log(Object.keys(object));Output :
Spiegazione : In questo esempio, un array come l’oggetto “check” ha tre valori di proprietà { 0: ‘x’, 1: ‘y’, 2: ‘z’ } e il metodo object.keys() ritorna le proprietà enumerabili di questo array. L’ordine delle proprietà è lo stesso di quello dato dall’oggetto manualmente.
Input : var object = { 70: 'x', 21: 'y', 35: 'z' }; console.log(Object.keys(object));Output :
Spiegazione : In questo esempio, un array come l’oggetto “check” ha tre valori di proprietà { 70: ‘x’, 21: ‘y’, 35: ‘z’ } in ordine casuale e il metodo object.keys() restituisce le proprietà enumerabili di questo array nell’ordine crescente del valore degli indici.
I codici per la funzione di cui sopra sono forniti di seguito.
Codice 1:
<script>
var
check = ;
console.log(Object.keys(check));
</script>
USCITA :
Codice 2:
<script>
var
object = { 0:
'x'
, 1:
'y'
, 2:
'z'
};
console.log(Object.keys(object));
</script>
USCITA :
Codice 3:
<script>
var
object = { 70:
'x'
, 21:
'y'
, 35:
'z'
};
console.log(Object.keys(object));
</script>
OUTPUT :