Skip to content

Commit 3df2cb3

Browse files
committed
Merge branch 'master' of https://github.com/javascript-tutorial/it.javascript.info into hotfix-conflicts
2 parents fdcdfec + 8628eb6 commit 3df2cb3

File tree

8 files changed

+397
-380
lines changed

8 files changed

+397
-380
lines changed

1-js/02-first-steps/01-hello-world/1-hello-alert/task.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ importance: 5
66

77
Crea un pagina che mostra un messaggio "I'm JavaScript".
88

9-
Provalo tramite la sandbox, oppure sul tuo hard disk, assicurati solo che funzioni.
9+
Provalo tramite la sandbox, oppure sul tuo hard disk, non ha importanza, assicurati solo che funzioni.
1010

1111
[demo src="solution"]
1212

1-js/02-first-steps/01-hello-world/article.md

Lines changed: 23 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
# Hello, world!
22

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.
44

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.
66

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"`.
88

99
## Il tag "script"
1010

@@ -37,45 +37,51 @@ Ad esempio:
3737
Puoi eseguire l'esempio cliccando su "Play" tramite il bottone in altro a destra.
3838
```
3939

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.
4141

4242
## La segnatura moderna
4343

4444
Il tag `<script>` ha un paio di attributi che vengono utilizzati raramente, ma è comunque possibile trovarli nei vecchi codici:
4545

46-
L'attributo `type`: <code>&lt;script <u>type</u>=...&gt;</code>
46+
L'attributo `type`: <code>&lt;script <u>type</u>=...&gt;</code>
47+
: 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.
4748

48-
: Nei più vecchi libri, è possibile trovare un commento all'interno dell'elemento `<script>`, come segue:
49+
L'attributo `language`: <code>&lt;script <u>language</u>=...&gt;</code>
50+
: 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:
4954

5055
```html no-beautify
5156
<script type="text/javascript"><!--
5257
...
5358
//--></script>
5459
```
5560

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+
5763

5864
## Script esterni
5965

6066
Se abbiamo molto codice JavaScript, possiamo inserirlo in un file separato.
6167

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`:
6369

6470
```html
6571
<script src="/path/to/script.js"></script>
6672
```
6773

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.
6975

7076
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.
7177

72-
Possiamo anche fornire un URL. Per esempio:
78+
Possiamo anche fornire un URL. Ad esempio:
7379

7480
```html
7581
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.11/lodash.js"></script>
7682
```
7783

78-
Per integrare più script, utilzzate più volte il tag:
84+
Per integrare più script, possiamo utilizzare più volte il tag:
7985

8086
```html
8187
<script src="/js/script1.js"></script>
@@ -88,9 +94,9 @@ Come regola da seguire, solo gli script molto semplici vanno inseriti all'intern
8894
8995
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).
9096
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.
9298
93-
Questo risparmierà traffico e renderà le pagine più veloci.
99+
Questo risparmierà traffico e renderà il caricamento delle pagine più veloce.
94100
```
95101

96102
````warn header="Se `src` è impostato, il contenuto all'interno di script verrà ignorato."
@@ -100,11 +106,11 @@ Questo non funziona:
100106

101107
```html
102108
<script *!*src*/!*="file.js">
103-
alert(1); // il contenuto viene ignorato, perchè src è impostato
109+
alert(1); // il contenuto viene ignorato, perché src è impostato
104110
</script>
105111
```
106112

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.
108114

109115
L'esempio precedete può essere diviso in due script:
110116

@@ -118,7 +124,7 @@ L'esempio precedete può essere diviso in due script:
118124
## Riepilogo
119125

120126
- 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.
122128
- Uno script in un file esterno può essere inserito con `<script src="path/to/script.js"></script>`.
123129

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.

1-js/02-first-steps/02-structure/article.md

Lines changed: 23 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
11
# Struttura del codice
22

3-
La prima cosa da studiare riguarda la struttura del codice.
3+
La prima cosa che studieremo riguarda la struttura del codice.
44

55
## Istruzioni
66

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.
88

99
Abbiamo già visto un'istruzione `alert('Hello, world!')`, che mostra il messaggio "Hello world!".
1010

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.
1212

13-
Ad esempio, qui dividiamo il messaggio in due:
13+
Ad esempio, qui dividiamo il messaggio in due alert:
1414

1515
```js run no-beautify
1616
alert('Hello'); alert('World');
@@ -33,7 +33,7 @@ alert('Hello')
3333
alert('World')
3434
```
3535

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).
3737

3838
**In molti casi la nuova riga viene interpretata come un punto e virgola implicito. Ma "in molti casi" non significa "sempre"!**
3939

@@ -45,9 +45,9 @@ alert(3 +
4545
+ 2);
4646
```
4747

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.
4949

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.**
5151

5252
Gli errori di questo tipo sono molto difficili da trovare e sistemare.
5353

@@ -58,7 +58,7 @@ Se sei curioso di vedere un esempio concreto di questo tipo di errore, dai un oc
5858
[1, 2].forEach(alert)
5959
```
6060
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`.
6262
6363
Adesso andiamo ad aggiungere un `alert` prima del codice e *non* concludiamo la riga con il punto e virgola:
6464
@@ -70,7 +70,7 @@ alert("There will be an error")
7070
7171
Adesso se lo eseguiamo, solo il primo `alert` viene mostrato, poi avremmo un errore!
7272
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`:
7474
```js run
7575
alert("All fine now");
7676
@@ -79,40 +79,40 @@ alert("All fine now");
7979
8080
Adesso avremmo il messaggio "All fine now", successivamente `1` seguito da `2`.
8181
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 `[...]`.
8383
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:
8585
8686
```js run no-beautify
8787
alert("There will be an error")[1, 2].forEach(alert)
8888
```
8989
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.
9191
````
9292

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.
9494

9595
## Commenti
9696

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.
9898

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.
100100

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 `//`.**
102102

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.
104104

105-
Come segue:
105+
Vediamo un esempio:
106106
```js run
107-
// Questo commento occupa una riga a parte
107+
// Questo commento occupa un'intera riga
108108
alert('Hello');
109109

110-
alert('World'); // Questo commento segue l'istruzione
110+
alert('World'); // Questo commento segue un istruzione
111111
```
112112

113113
**I commenti multilinea incominciano con un singolo carattere di slahs ed un asterisco <code>/&#42;</code> e finiscono con un asterisco ed un carattere di slash <code>&#42;/</code>.**
114114

115-
Come segue:
115+
Come nell'esempio:
116116

117117
```js run
118118
/* Un esempio con due messaggi.
@@ -124,7 +124,7 @@ alert('World');
124124

125125
Il contenuto dei commenti viene ignorato, quindi se inseriamo codice al suo interno <code>/&#42; ... &#42;/</code> non verrà eseguito.
126126

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:
128128
```js run
129129
/* Commentiamo il codice
130130
alert('Hello');
@@ -139,7 +139,7 @@ In molti editor una linea di codice può essere commentata con la combinazione d
139139
````warn header="I commenti annidati non sono supportati!"
140140
Non si possono inserire `/*...*/` all'interno di altri `/*...*/`.
141141
142-
Questo codice si bloccherebbe con un errore:
142+
Questo codice genererebbe un errore:
143143
144144
```js run no-beautify
145145
/*

0 commit comments

Comments
 (0)