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/01-hello-world/article.md
+23-17Lines changed: 23 additions & 17 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,10 +1,10 @@
1
1
# Hello, world!
2
2
3
-
Il seguente tutorial tratta del core (nucleo) JavaScript, che è indipendente dalla piattaforma.
3
+
Il seguente tutorial tratta del core (nucleo) di JavaScript, il quale è indipendente dalla piattaforma.
4
4
5
-
Abbiamo bisogno di un ambiente di lavoro per eseguire i nostri script, e il fatto che questo libro sia online, rende il browser un ottima scelta. Cercheremo di mantenere al minimo l'utilizzo dei comandi specifici per browser (come `alert`), cosi non dovrai perdere la testa se deciderai di spostarti in altri ambienti come Node.JS. In ogni caso, i dettagli browser vengono spiegati in dettaglio nella [prossima parte](/ui) del tutorial.
5
+
Abbiamo bisogno di un ambiente di lavoro per eseguire i nostri script, e il fatto che questo tutorial sia online, rende il browser un ottima scelta. Cercheremo di mantenere al minimo l'utilizzo dei comandi specifici per browser (come `alert`), cosi non dovrai perdere la testa se deciderai di spostarti in altri ambienti (come Node.jd). In ogni caso, ci concentreremo sulle caratteristiche JavaScript specifiche per il browser nella [prossima parte](/ui) del tutorial.
6
6
7
-
Quindi prima di tutto, vediamo come inserire uno script in una pagina web. Per ambienti server-side, è sufficiente eseguirli con un comando come `"node my.js"` in Node.JS.
7
+
Quindi prima di tutto, vediamo come inserire uno script in una pagina web. Per ambienti server-side (come Node.js), è sufficiente eseguirli con un comando come `"node my.js"`.
8
8
9
9
## Il tag "script"
10
10
@@ -37,45 +37,51 @@ Ad esempio:
37
37
Puoi eseguire l'esempio cliccando su "Play" tramite il bottone in altro a destra.
38
38
```
39
39
40
-
Il tag `<script>` contiene codice JavaScript che viene automaticamente eseguito quando il browser incontra il tag.
40
+
Il tag `<script>` contiene codice JavaScript che viene automaticamente eseguito quando il browser processa il tag.
41
41
42
42
## La segnatura moderna
43
43
44
44
Il tag `<script>` ha un paio di attributi che vengono utilizzati raramente, ma è comunque possibile trovarli nei vecchi codici:
: Il precedente standard HTML, HTML4, richiedeva che lo script avesse una proprietà `type`. Solitamente era `type="text/javascript"`. Ora non è più richiesto. Inoltre, lo standard attuale HTML, ha completamente cambiato il suo significato. Ora può essere utilizzato per i moduli JavaScript. Ma questo è un argomento avanzato, parleremo dei moduli più avanti nel tutorial.
47
48
48
-
: Nei più vecchi libri, è possibile trovare un commento all'interno dell'elemento `<script>`, come segue:
: Questo attributo aveva lo scopo di mostrare il linguaggio utilizzato dallo script. Ora questo linguaggio non ha più molto senso, poiché JavaScript è il linguaggio utilizzato di default. Quindi non ha più senso utilizzarlo.
51
+
52
+
I commenti prima e dopo gli script.
53
+
: Nei vecchi libri e tutorial, potreste trovare commenti all'interno del tag `<script>`, come questo:
49
54
50
55
```html no-beautify
51
56
<script type="text/javascript"><!--
52
57
...
53
58
//--></script>
54
59
```
55
60
56
-
Questo trucco non viene più utilizzato nel moderno JavaScript. I commenti venivano utilizzati per nascondere il codice JavaScript dai vecchi browser che non conoscevano il tag `<script>`.I browser rilasciati negli utlimi 15 anni non hanno questo problema, questo tipo di strategia può aiutarti a riconsocere i vecchi codici.
61
+
Questo trucco non viene più utilizzato. Questi commenti avevano lo scopo di nascondere il codice JavaScript ai vecchi browser che non erano in grado di elaborare il tag `<script>`. Poiché i browser rilasciati negli ultimi 15 anni non hanno più questo problema, questo tipo di commenti possono aiutarti ad identificare codici molto vecchi.
62
+
57
63
58
64
## Script esterni
59
65
60
66
Se abbiamo molto codice JavaScript, possiamo inserirlo in un file separato.
61
67
62
-
Il file dello script viene integrato nel codice HTML tramtie l'attributo `src`:
68
+
Il file dello script viene integrato nel codice HTML tramite l'attributo `src`:
63
69
64
70
```html
65
71
<scriptsrc="/path/to/script.js"></script>
66
72
```
67
73
68
-
Questo `/path/to/script.js` è il percorso assoluto al file che contiene lo script (dalla root del sito).
74
+
Questo `/path/to/script.js` è il percorso assoluto al file che contiene lo script a partire dalla root del sito. Ad esempio, `src="script.js"` significherebbe un file `"script.js"` che si trova nella cartella corrente.
69
75
70
76
E' anche possibile fornire un percorso relativo a partire dalla pagina corrente. Per esempio `src="script.js"` significa che il file `"script.js"` si trova nella cartella corrente.
Per integrare più script, utilzzate più volte il tag:
84
+
Per integrare più script, possiamo utilizzare più volte il tag:
79
85
80
86
```html
81
87
<scriptsrc="/js/script1.js"></script>
@@ -88,9 +94,9 @@ Come regola da seguire, solo gli script molto semplici vanno inseriti all'intern
88
94
89
95
Il beneficio di inserire gli script in file separati è che il browser andrà a scaricarli e li memorizzerà nella sua [cache](https://en.wikipedia.org/wiki/Web_cache).
90
96
91
-
Cosi facendo, le altre pagine che vorranno utilizzare lo stesso script lo preleveranno dallacache invece che riscaricarlo. Quindi il file verrà scaricato una sola volta.
97
+
Cosi facendo, le altre pagine che vorranno utilizzare lo stesso script lo preleveranno dalla cache invece che riscaricarlo. Quindi il file verrà scaricato una sola volta.
92
98
93
-
Questo risparmierà traffico e renderà le pagine più veloci.
99
+
Questo risparmierà traffico e renderà il caricamento delle pagine più veloce.
94
100
```
95
101
96
102
````warn header="Se `src` è impostato, il contenuto all'interno di script verrà ignorato."
@@ -100,11 +106,11 @@ Questo non funziona:
100
106
101
107
```html
102
108
<script*!*src*/!*="file.js">
103
-
alert(1); // il contenuto viene ignorato, perchè src è impostato
109
+
alert(1); // il contenuto viene ignorato, perché src è impostato
104
110
</script>
105
111
```
106
112
107
-
Dobbiamo scegliere: o esterno `<script src="…">` o il semplice tag `<script>` con all'interno il codice.
113
+
Dobbiamo scegliere fra le due possibilità: script esterno `<script src="…">` o il semplice tag `<script>` con all'interno il codice.
108
114
109
115
L'esempio precedete può essere diviso in due script:
110
116
@@ -118,7 +124,7 @@ L'esempio precedete può essere diviso in due script:
118
124
## Riepilogo
119
125
120
126
- Possiamo usare il tag `<script>` per aggiungere codice JavaScript alla pagina.
121
-
- Gli attributi `type` e `language` non sono richiesti.
127
+
- Gli attributi `type` e `language` non sono più richiesti.
122
128
- Uno script in un file esterno può essere inserito con `<script src="path/to/script.js"></script>`.
123
129
124
-
C'e ancora molto da imparare riguaro gli script browser e la loro interazione con le pagine web. Ma tenete a mente che questa parte del tutorial è dedicata al linguaggio JavaScript, quindi non dobbiamo distrarci da questo obbiettivo. Andremo ad utilizzare il browser come piattaforma in cui eseguire JavaScript, che è molto utile, ma è solo uno dei tanti modi.
130
+
C'e ancora molto da imparare riguardo gli script browser e la loro interazione con le pagine web. Ma tenete a mente che questa parte del tutorial è dedicata al linguaggio JavaScript, quindi non dobbiamo distrarci da questo obbiettivo. Andremo ad utilizzare il browser come piattaforma in cui eseguire JavaScript, che è molto comodo, ma è solo uno dei tanti modi.
Copy file name to clipboardExpand all lines: 1-js/02-first-steps/02-structure/article.md
+23-23Lines changed: 23 additions & 23 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,16 +1,16 @@
1
1
# Struttura del codice
2
2
3
-
La prima cosa da studiare riguarda la struttura del codice.
3
+
La prima cosa che studieremo riguarda la struttura del codice.
4
4
5
5
## Istruzioni
6
6
7
-
Le istruzioni sono dei costrutti sintattici e comandi che eseguono azioni.
7
+
Le istruzioni sono dei costrutti sintattici e comandi che permettono di eseguire azioni.
8
8
9
9
Abbiamo già visto un'istruzione `alert('Hello, world!')`, che mostra il messaggio "Hello world!".
10
10
11
-
All'interno del codice possiamo avere tutte le istruzioni che desideriamo. Una seconda istruzione può essere separata tramite il punto e virgola.
11
+
All'interno del codice possiamo avere tutte le istruzioni che desideriamo. Le istruzioni possono essere separate da un punto e virgola.
12
12
13
-
Ad esempio, qui dividiamo il messaggio in due:
13
+
Ad esempio, qui dividiamo il messaggio in due alert:
14
14
15
15
```js run no-beautify
16
16
alert('Hello'); alert('World');
@@ -33,7 +33,7 @@ alert('Hello')
33
33
alert('World')
34
34
```
35
35
36
-
Qui JavaScript interpreta la fine della riga come un punto e virgola "implicito". Viene anche chiamato [automatic semicolon insertion](https://tc39.github.io/ecma262/#sec-automatic-semicolon-insertion).
36
+
In questo caso, JavaScript interpreta la fine della riga come un punto e virgola "implicito". Viene anche chiamata [inserimento automatico del punto e virgola](https://tc39.github.io/ecma262/#sec-automatic-semicolon-insertion).
37
37
38
38
**In molti casi la nuova riga viene interpretata come un punto e virgola implicito. Ma "in molti casi" non significa "sempre"!**
39
39
@@ -45,9 +45,9 @@ alert(3 +
45
45
+2);
46
46
```
47
47
48
-
Il codice stampa `6`perchè JavaScript non inserisce un punto e virgola qui. E' abbastanza ovvio che se la riga finisce con un `"+"`, allora è un "espressione incompleta", quindi il punto e virgola non è richiesto. Quindi in questo caso tutto funziona come dovrebbe.
48
+
Il codice stampa `6`perché, in questo caso, JavaScript non inserisce un punto e virgola. E' abbastanza ovvio che se la riga finisce con un `"+"`, allora è un "espressione incompleta", quindi il punto e virgola non verrà inserito. Per questo, nell'esempio sopra, tutto funziona come dovrebbe.
49
49
50
-
**Ma ci sono casi in cui JavaScript "fallisce" But there are situations where JavaScript "fails" nell'interpretare un punto e virgola.**
50
+
**Ma ci sono casi in cui JavaScript "fallisce" nell'interpretare un punto e virgola, dove invece sarebbe necessario.**
51
51
52
52
Gli errori di questo tipo sono molto difficili da trovare e sistemare.
53
53
@@ -58,7 +58,7 @@ Se sei curioso di vedere un esempio concreto di questo tipo di errore, dai un oc
58
58
[1, 2].forEach(alert)
59
59
```
60
60
61
-
Non c'e bisogno di pensare al significato delle parentesi `[]` e al `forEach`. Li studieremo più avanti, per ora è sufficiente sapere il risultato: che mostrerà `1` e poi `2`.
61
+
Non c'e bisogno di pensare al significato delle parentesi `[]` e al `forEach`. Li studieremo più avanti, per ora è sufficiente sapere il risultato: mostrerà `1` e poi `2`.
62
62
63
63
Adesso andiamo ad aggiungere un `alert` prima del codice e *non* concludiamo la riga con il punto e virgola:
64
64
@@ -70,7 +70,7 @@ alert("There will be an error")
70
70
71
71
Adesso se lo eseguiamo, solo il primo `alert` viene mostrato, poi avremmo un errore!
72
72
73
-
Ma tutto si risolve se aggiungiamo un punto e virgola dopo `alert`:
73
+
Ma tutto si risolve aggiungendo un punto e virgola dopo `alert`:
74
74
```js run
75
75
alert("All fine now");
76
76
@@ -79,40 +79,40 @@ alert("All fine now");
79
79
80
80
Adesso avremmo il messaggio "All fine now", successivamente `1` seguito da `2`.
81
81
82
-
L'errore nel non aver messo il punto e virgola è avvenuto perchè JavaScript non inserisce automaticamente un punto e virgola prima delle parentesi quadre `[...]`.
82
+
L'errore nel non aver messo il punto e virgola è avvenuto perché JavaScript non inserisce automaticamente un punto e virgola prima delle parentesi quadre `[...]`.
83
83
84
-
Quindi, poichè il punto e virgola non viene auto-inserito, il codice del precedente esempio viene trattato come un istruzione singola. Quindi il motore JavaScript lo vede cosi:
84
+
Quindi, poiché il punto e virgola non viene auto-inserito, il codice del precedente esempio viene trattato come un istruzione singola. Infatti il motore JavaScript lo vede cosi:
85
85
86
86
```js run no-beautify
87
87
alert("There will be an error")[1, 2].forEach(alert)
88
88
```
89
89
90
-
Anche se dovrebbero essere due istruzioni separate, non una singola. Questo tipo di unione, in questo caso è errata, quindi produce un errore. Ci sono altre situazioni in cui si verifica questo tipo di errore.
90
+
Anche se se in realtà sono due istruzioni separate, non una singola. Questo tipo di interpretazione, in questo caso è errata. Ci possono essere altre situazioni in cui si verifica questo tipo di errore.
91
91
````
92
92
93
-
E' consigliato quindi, di mettere il punto e virgola fra ogni istruzione, anche se vengono scritte in righe diverse. Questa regola è largamente adottata dalla community. Ripetiamolo nuovamente -- *è possibile*evitare di scrivere il punto e virgola la maggior parte delle volte. Ma è più sicuro -- specialmente per un novizio -- inserirle al termine di ogni istruzione.
93
+
E' consigliato quindi, di inserire il punto e virgola fra ogni istruzione, anche se vengono scritte in righe diverse. Questa è una regola largamente adottata dalla community. Ripetiamolo nuovamente -- *è possibile*omettere il punto e virgola la maggior parte delle volte. Ma è più sicuro -- specialmente per un novizio -- inserirlo al termine di ogni istruzione.
94
94
95
95
## Commenti
96
96
97
-
Con il passare del tempo, i programmi sono diventati sempre più complessi. E' diventato necessario aggiungere *commenti*che descrivessero i comportamenti del codice e il perchè.
97
+
Con il passare del tempo, i programmi sono diventati sempre più complessi. Ed è diventato necessario aggiungere *commenti*per poter descrivere i comportamenti del codice.
98
98
99
-
I commenti possono essere messi in qualsiasi punto dello script. Infatti non hanno alcun effetto sull'esecuzione del codice, poichè il motore JavaScript semplicemente li ignora.
99
+
I commenti possono essere messi in qualsiasi punto dello script. Infatti non hanno alcun effetto sull'esecuzione del codice, poiché il motore JavaScript semplicemente li ignora.
100
100
101
-
**I commenti su una singola linea incominciano con due caratteri di slash `//`.**
101
+
**I commenti su una singola linea si inseriscono con due caratteri di slash `//`.**
102
102
103
-
Il resto della linea è il commento. Può occupare un intera linea oppure seguire l'istruzione.
103
+
Il resto della linea è il commento. Può occupare un intera linea oppure essere posta in seguito ad un'istruzione.
104
104
105
-
Come segue:
105
+
Vediamo un esempio:
106
106
```js run
107
-
// Questo commento occupa una riga a parte
107
+
// Questo commento occupa un'intera riga
108
108
alert('Hello');
109
109
110
-
alert('World'); // Questo commento segue l'istruzione
110
+
alert('World'); // Questo commento segue un istruzione
111
111
```
112
112
113
113
**I commenti multilinea incominciano con un singolo carattere di slahs ed un asterisco <code>/*</code> e finiscono con un asterisco ed un carattere di slash <code>*/</code>.**
114
114
115
-
Come segue:
115
+
Come nell'esempio:
116
116
117
117
```js run
118
118
/* Un esempio con due messaggi.
@@ -124,7 +124,7 @@ alert('World');
124
124
125
125
Il contenuto dei commenti viene ignorato, quindi se inseriamo codice al suo interno <code>/* ... */</code> non verrà eseguito.
126
126
127
-
Qualche volta diventa utile per bloccare temporaneamente qualche porzione di codice:
127
+
Qualche volta può essere utile per bloccare temporaneamente qualche porzione di codice:
128
128
```js run
129
129
/* Commentiamo il codice
130
130
alert('Hello');
@@ -139,7 +139,7 @@ In molti editor una linea di codice può essere commentata con la combinazione d
139
139
````warn header="I commenti annidati non sono supportati!"
140
140
Non si possono inserire `/*...*/` all'interno di altri `/*...*/`.
0 commit comments