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/05-extend-natives/article.md
+3-3Lines changed: 3 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -21,7 +21,7 @@ alert(filteredArr); // 10, 50
21
21
alert(filteredArr.isEmpty()); // false
22
22
```
23
23
24
-
Notiamo una cosa interessante. I metodi built-in come like `filter`, `map` e cosi via -- ritornano nuovi esattamente del nuovo tipo ereditato, cioè `PowerArray`. La loro implementazione interna utilizzata il `costruttore` per farlo.
24
+
Notiamo una cosa interessante. I metodi built-in come `filter`, `map` e così via -- ritornano nuovi oggetti del tipo ereditato, cioè `PowerArray`. La loro implementazione interna utilizzata il `costruttore` per farlo.
25
25
26
26
Nell'esempio sopra,
27
27
```js
@@ -32,7 +32,7 @@ Quando invochiamo `arr.filter()`, questo creerà internamente il nuovo array con
32
32
33
33
Ancora meglio, possiamo personalizzarne il comportamento.
34
34
35
-
Possiamo aggiungre uno speciale getter statico `Symbol.species` alla classe. Questo dovrebbe ritornare il costruttore utilizzerà internamente per creare le nuove entità in `map`, `filter` e gli altri metodi.
35
+
Possiamo aggiungere uno speciale getter statico `Symbol.species` alla classe. Questo dovrebbe ritornare il costruttore che Javascript utilizzerà internamente per creare le nuove entità in `map`, `filter` e gli altri metodi.
36
36
37
37
Se invece, la nostra intenzione è quella di restituire degli array standard tramite l'utilizzo dei metodi come `map` o `filter`, possiamo ritornare `Array` in `Symbol.species`, come nell'esempio:
38
38
@@ -76,7 +76,7 @@ Come già sappiamo, le classi integrate si estendono a vicenda. Ad esempio, `Arr
76
76
77
77
Normalmente, quando una classe ne estende un'altra, sia i metodi statici che quelli non-statici vengono ereditati. Questo è stato ampiamente spiegato nell'articolo [](info:static-properties-methods#statics-and-inheritance).
78
78
79
-
Ma le classi built-in fanno eccezione. Queste infatti, non ereditano i membri statici a vicenda.
79
+
Ma le classi built-in fanno eccezione. Queste, infatti, non ereditano i membri statici a vicenda.
80
80
81
81
Ad esempio, sia `Array` che `Date` ereditano da `Object`, quindi le loro istanze possiedono i metodi di `Object.prototype`. Ma `Array.[[Prototype]]` non fa riferimento ad `Object`, quindi, ad esempio, non si ha alcun metodo statico come `Array.keys()` (o `Date.keys()`).
0 commit comments