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/02-first-steps/03-strict-mode/article.md
+21-18Lines changed: 21 additions & 18 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,7 +2,7 @@
2
2
3
3
Per molto tempo JavaScript si è evoluto senza problemi di compatibilità. Nuove funzionalità venivano aggiunte al linguaggio, ma quelle vecchie non cambiavano.
4
4
5
-
Questo ha consentito al vecchio codice di non diventare obsoleto. Ma lo svantaggio è stato che cosi facendo gli errori e le decisioni imperefette fatte dai creatori di JavaScript, rimarranno nel linguaggio per sempre.
5
+
Questo ha consentito al vecchio codice di non diventare obsoleto. Ma lo svantaggio è stato che cosi facendo gli errori e le decisioni imperfette fatte dai creatori di JavaScript, rimarranno nel linguaggio per sempre.
6
6
7
7
Cosi è stato fino al 2009 quando è apparsa ECMAScript 5 (ES5). Ha aggiungo nuove funzionalità al linguaggio e ne ha modificate alcune già esistenti. Per far si che il vecchio codice continui a funzionare, molte modifiche vengono disattivate di default. Diventa quindi necessario abilitarle esplicitamente con la direttiva `"use strict"`.
8
8
@@ -19,14 +19,14 @@ Per esempio:
19
19
...
20
20
```
21
21
22
-
Impareremo presto le funzioni(un modo per raggruppare le istruzioni).
22
+
Impareremo presto le funzioni(un modo per raggruppare le istruzioni).
23
23
24
-
Guardando avanti, notiamo che `"use strict"` può essere applicato all'inizio di una funzione(la maggior parte) piuttosto che all'intero script. La modalità strict sarà quindi attiva solo all'interno di quella funzione. Solitamente si utilizza nell'intero script.
24
+
Guardando avanti, notiamo che `"use strict"` può essere applicato all'inizio di una funzione(la maggior parte) piuttosto che all'intero script. La modalità strict sarà quindi attiva solo all'interno di quella funzione. Solitamente si utilizza nell'intero script.
25
25
26
26
````warn header="Assicurati che \"use strict\" sia all'inizio"
27
27
Assicurati `"use strict"` sia all'inizio dello script, altrimenti la modalità script non verrà abilitata.
28
28
29
-
Qui non si attiva la modalità strict:
29
+
Qui vediamo un esempio in cui non verrà attivata la modalità strict:
30
30
31
31
```js no-strict
32
32
alert("some code");
@@ -60,27 +60,30 @@ Potete provare con `key:Shift+Enter` per inserire più righe di codice, con `use
60
60
<Enter to run>
61
61
```
62
62
63
-
Funziona nella maggior parte dei browser, tra cui Firefox Chrome.
63
+
Funziona nella maggior parte dei browser, tra cui Firefox e Chrome.
64
64
65
-
Nel caso in cui non funzioni, la miglior strada da seguire è quella di assicurarsi che `use strict` venga inserito, in questo modo:
65
+
Nel caso in cui non funzioni, la miglior strada da seguire è quella di assicurarsi che `use strict` venga inserito, in questo modo:
66
66
67
67
```js
68
-
(function() {
69
-
'use strict';
68
+
"use strict";
69
+
70
+
// codice
71
+
...
72
+
```
73
+
74
+
75
+
## Dovremmo utilizzare "use strict"?
70
76
71
-
// ...codice...
72
-
})()
77
+
Può sembrare una domanda ovvia, ma non lo è.
73
78
79
+
Potrebbero consigliarvi di iniziare tutti gli script con `"use strict"`... Ma sapete cosa c'è di bello?
74
80
75
-
## Utilizzare sempre "use strict"
81
+
JavaScript moderno supporta le "classi" e i "moduli" - delle strutture avanzate del linguaggio (a cui arriveremo più avanti), che abilitano `use strict` in automatico. Quindi non è necessario inserire la direttiva `"use strict"` se utilizziamo queste funzionalità.
76
82
77
-
Le differenze tra`"use strict"` contro la modalità di "default" non è ancora stata spiegata.
83
+
**Quindi, per ora`"use strict";` è un ospite ben accetto nei vostri script. Più avanti, quando il vostro codice sarà suddiviso in classi e moduli, potrete ometterlo.**
78
84
79
-
Nel prossimo capitolo, mentre impareremo le caratteristiche del linguaggio, terremo d'occhio anche le differenze tra la modalità strict e quella di default. Fortunatamente non sono molte. E senza dubbio renderanno migliore la scrittura del codice.
85
+
Al momento, è sufficenete una conoscenza generica di `use strict`.
80
86
81
-
A questo punto è sufficiente sapere le regole generali:
87
+
Nei prossimi capitoli, quando impareremo nuove funzionalità del linguaggio, vedremo più nel dettaglio le differenze tra la "strict mode" e la "vecchia modalità". Fortunatamente, non sono molte e sono anche molto utili.
82
88
83
-
1. L'utilizzo della direttiva `"use strict"` cambia la modalità del motore JavaScript al il metodo moderno, cambiando i comportamenti di alcune caratteristiche integrate. Vedremo meglio i dettagli man mano che studiamo.
84
-
2. La modalità strict viene abilitata tramite l'istruzione `"use strict"` posta all'inizio. In ogni caso ci sono alcune caratteristiche del linguaggio come "classi" e "moduli" che attivano la modalità strict in automatico.
85
-
3. La modalità strict è supportata da tutti i moderni browser.
86
-
4.E' sempre raccomandato iniziare lo script con `"use strict"`. Tutti gli esempi del tutorial assumo che esso sia attivo, tranne in alcuni esempi(veramente pochi) in cui verrà specificato esplicitamente.
89
+
Tutti gli esempi in questo tutorial assumono che la "strict mode" sia attiva, tranne in alcuni rarissimi casi (in cui sarà specificato).
0 commit comments