You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: 1-js/09-classes/06-instanceof/article.md
+6-6Lines changed: 6 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,4 +1,4 @@
1
-
# Verifica delel classi: "instanceof"
1
+
# Verifica delle classi: "instanceof"
2
2
3
3
L'operatore `instanceof` ci consente di verificare se un oggetto appartiene ad una specifica classe. Anche l'ereditarietà viene presa in considerazione.
4
4
@@ -50,12 +50,12 @@ Normalmente `instanceof` esamina la catena dei prototype per effettuare questa v
50
50
51
51
L'algoritmo di `obj instanceof Class` funzione, a grandi linee, in questo modo:
52
52
53
-
1. Se è stato definito un metodo statico `Symbol.hasInstance`, allora questo verrà invocato: `Class[Symbol.hasInstance](obj)`. Dovrebbe ritornare `true` o `false`, questo è tutto. Cosi è come possiamo personalizzare il comportamento di `instanceof`.
53
+
1. Se è stato definito un metodo statico `Symbol.hasInstance`, allora questo verrà invocato: `Class[Symbol.hasInstance](obj)`. Dovrebbe ritornare `true` o `false`, questo è tutto. Così possiamo personalizzare il comportamento di `instanceof`.
54
54
55
55
For example:
56
56
57
57
```js run
58
-
// impostiamo il controllo instanceOf in modo che assuma che
58
+
// impostiamo il controllo instanceOf in modo che supponga che
59
59
// qualsiasi cosa con la proprietà canEat sia un animale
60
60
classAnimal {
61
61
static [Symbol.hasInstance](obj) {
@@ -76,11 +76,11 @@ L'algoritmo di `obj instanceof Class` funzione, a grandi linee, in questo modo:
// se una di questa vale true, allora viene ritornato true
79
+
// se una di questa è true, allora viene ritornato true
80
80
// altrimenti, se siamo arrivati al termine della catena, ritorna false
81
81
```
82
82
83
-
Nell'esempio sopra `rabbit.__proto__ === Rabbit.prototype`, questo ci ritorna una risposta immediata.
83
+
Nell'esempio sopra `rabbit.__proto__ === Rabbit.prototype`, che ci ritorna una risposta immediata.
84
84
85
85
In caso di ereditarietà, il riscontro avverrà al secondo passo:
86
86
@@ -201,7 +201,7 @@ Come potete vedere, il risultato è esattamente `Symbol.toStringTag` (se esiste)
201
201
202
202
Al termine avremo "typeof on steroids" che non funziona solamente con i tipi di dato primitivo, ma anche con gli oggetti integrati e può anche essere personalizzato.
203
203
204
-
Possiamo utilizzare `{}.toString.call` piuttosto di `instanceof` per gli oggetti integrati quando vogliamo ottenerne il tipo come stringa piuttosto che effettuare una semplice verifica.
204
+
Possiamo utilizzare `{}.toString.call` piuttosto di `instanceof` per gli oggetti integrati quando vogliamo ottenerne il tipo come stringa invece di effettuare una semplice verifica.
0 commit comments