mozilla

Confronta le versioni

Una reintroduzione al Java Script (Tutorial JS)

Change Revisions

Versione 350651:

Versione 350651 di Nicola_D del

Versione 350793:

Versione 350793 di Nicola_D del

Titolo:
Una reintroduzione al Java Script (Tutorial JS)
Una reintroduzione al Java Script (Tutorial JS)
Slug:
JavaScript/Una_reintroduzione_al_JavaScript
JavaScript/Una_reintroduzione_al_JavaScript
Contenuto:

Versione 350651
Versione 350793
n233      However, this is rarely necessary, as JavaScript will silenn233      Tuttavia, questo raramente è necessario, JavaScript eseguir
>tly perform this conversion when it expects a boolean, such as in>à silenziosamente la conversione quando si aspetta un booleano, c
> an <code>if</code> statement (see below). For this reason, we so>osì come in una istruzione&nbsp; <code>if</code> (vedi sotto). Pe
>metimes speak simply of "true values" and "false values," meaning>r questa ragione, a volte si parla semplicemente di "valori veri"
> values that become <code>true</code> and <code>false</code>, res> e "valori falsi" valori significativi che diventano <code>true</
>pectively, when converted to booleans. Alternatively, such values>code> e <code>false</code>, rispettivamente, quando convertiti in
> can be called "truthy" and "falsy", respectively.> booleani. <span id="result_box" lang="it"><span class="hps">In a
 >lternativa</span><span>,</span> <span class="hps">tali valori</sp
 >an> <span class="hps">possono</span> <span class="hps">essere</sp
 >an> <span class="hps">chiamati</span> <span class="hps atn">"</sp
 >an><span>truthy</span><span>"</span> <span class="hps">e</span> <
 >span class="hps atn">"</span><span>falsy</span><span>"</span><spa
 >n>,</span> <span class="hps">rispettivamente</span><span>.</span>
 ></span>
234    </p>
235    <p>234    </p>
236      Boolean operations such as <code>&amp;&amp;</code> (logical235    <p>
> <em>and</em>), <code>||</code> (logical <em>or</em>), and <code> 
>!</code> (logical <em>not</em>) are supported; see below. 
236      Le operazioni booleane come <code>&amp;&amp;</code> (<em>an
 >d</em> logico), <code>||</code> (<em>or</em> logico), e <code>!</
 >code> (<em>not</em> logico) sono supportate; vedi sotto.
n239      Variablesn239      Variabili
240    </h2>
241    <p>240    </h2>
242      New variables in JavaScript are declared using the <code><a241    <p>
> href="/en/JavaScript/Reference/Statements/var" title="en/Core_Ja 
>vaScript_1.5_Reference/Statements/var">var</a></code> keyword: 
242      Le nuove varibili sono dichiarate in JavaScript utilizzando
 > la parola chiave <code><a href="/en/JavaScript/Reference/Stateme
 >nts/var" title="en/Core_JavaScript_1.5_Reference/Statements/var">
 >var</a></code>:
n249      If you declare a variable without assigning any value to itn249      Se la variabile viene dichiarata senza assegnarle un valore
>, its type is <code>undefined</code>.&nbsp;>, il suo tipo sarà <code>undefined</code>.&nbsp;
250    </p>
251    <p>250    </p>
252      An important difference from other languages like Java is t251    <p>
>hat in JavaScript, blocks do not have scope; only functions have  
>scope. So if a variable is defined using <code>var</code> in a co 
>mpound statement (for example inside an <code>if</code> control s 
>tructure), it will be visible to the entire function. 
252      Una differenza importante rispetto ad altri linguaggi come 
 >Java è che in JavaScript, i blocchi non hanno ambito; solo le fun
 >zioni hanno ambito. Quindi se una variabile viene definita utiliz
 >zando <code>var</code> in una istruzione composta (ad esempio all
 >'interno di una struttura di controllo <code>if</code>), essa sar
 >à visibile da parte dell'intera funzione.
n255      Operatorsn255      Operatori
256    </h2>
257    <p>256    </h2>
258      JavaScript's numeric operators are <code>+</code>, <code>-<257    <p>
>/code>, <code>*</code>, <code>/</code> and <code>%</code> - which 
> is the remainder operator. Values are assigned using <code>=</co 
>de>, and there are also compound assignment statements such as <c 
>ode>+=</code> and <code>-=</code>. These extend out to <code>x =  
>x <em>operator</em> y</code>. 
258      Gli operatori numerici in JavaScript sono <code>+</code>, <
 >code>-</code>, <code>*</code>, <code>/</code> e&nbsp; <code>%</co
 >de> - che è l'operatore per il resto. I valori sono assegnanti us
 >ando <code>=</code>, e vi sono anche le istruzioni di assegnament
 >o composte tipo <code>+=</code> e <code>-=</code>. Questi comprim
 >ono la forma <code>x = x <em>operatore</em> y</code>.
n265      You can use <code>++</code> and <code>--</code> to incremenn265      E' possibile utilizzare <code>++</code> e <code>--</code> p
>t and decrement respectively. These can be used as prefix or post>er incrementare e decrementare rispettivamente. Questi possono es
>fix operators.>sere usati come operatori prefissi o postfissi.
266    </p>
267    <p>266    </p>
267    <p>
268      The <a href="/en/JavaScript/Reference/Operators/String_Oper268      L'<a href="/en/JavaScript/Reference/Operators/String_Operat
>ators" title="en/Core_JavaScript_1.5_Reference/Operators/String_O>ors" title="en/Core_JavaScript_1.5_Reference/Operators/String_Ope
>perators"><code>+</code> operator</a> also does string concatenat>rators">operatore +</a> compie anche la concatenatione di stringh
>ion:>e:
n275      If you add a string to a number (or other value) everythingn275      Se si somma una stringa ad un numero (o un altro valore) tu
> is converted in to a string first. This might catch you out:>tto viene convertito dalla prima stringa. Questo esempio potrebbe
 > aiutare a chiarire il tutto:
n284      Adding an empty string to something is a useful way of convn284      Sommare una stringa vuota ad un altro tipo è un utile manie
>erting it.>ra per convertirlo.
285    </p>
286    <p>285    </p>
287      <a href="/en/JavaScript/Reference/Operators/Comparison_Oper286    <p>
>ators" title="en/Core_JavaScript_1.5_Reference/Operators/Comparis 
>on_Operators">Comparisons</a> in JavaScript can be made using <co 
>de>&lt;</code>, <code>&gt;</code>, <code>&lt;=</code> and <code>& 
>gt;=</code>. These work for both strings and numbers. Equality is 
> a little less straightforward. The double-equals operator perfor 
>ms type coercion if you give it different types, with sometimes i 
>nteresting results: 
287      I <a href="/en/JavaScript/Reference/Operators/Comparison_Op
 >erators" title="en/Core_JavaScript_1.5_Reference/Operators/Compar
 >ison_Operators">confronti</a> in JavaScript possono essere esegui
 >ti usando <code>&lt;</code>, <code>&gt;</code>, <code>&lt;=</code
 >> e <code>&gt;=</code>. Essi funzionano sia per le stringhe che p
 >er i numeri. L'uguaglianza è un pochino meno lineare. L'operatore
 > di doppio uguale esegue la coercizione di tipo se viene eseguita
 > tra tipi differenti, con a volte risultati interessanti:
n296      To avoid type coercion, use the triple-equals operator:n296      Per evitare la coercizione di tipo, si utilizza l'operatore
 > triplo uguale:
n305      There are also <code>!=</code> and <code>!==</code> operaton305      Vi sono anche gli operatori !<code>=</code> e&nbsp; <code>!
>rs.>==</code> .
306    </p>
307    <p>306    </p>
308      JavaScript also has <a href="/en/JavaScript/Reference/Opera307    <p>
>tors/Bitwise_Operators" title="en/Core_JavaScript_1.5_Reference/O 
>perators/Bitwise_Operators">bitwise operations</a>. If you want t 
>o use them, they're there. 
308      JavaScript ha inoltre le <a href="/en/JavaScript/Reference/
 >Operators/Bitwise_Operators" title="en/Core_JavaScript_1.5_Refere
 >nce/Operators/Bitwise_Operators">opertazioni bit per bit</a>. Se 
 >si desidera utilizzarle, sono lì.
n311      Control structuresn311      Strutture di controllo
312    </h2>
313    <p>312    </h2>
314      JavaScript has a similar set of control structures to other313    <p>
> languages in the C family. Conditional statements are supported  
>by <code>if</code> and <code>else</code>; you can chain them toge 
>ther if you like: 
314      JavaScript ha una serie di strutture di controllo simili ag
 >li altri linguaggi della famiglia del C. Le istruzioni condiziona
 >li sono supportate da <code>if</code> e <code>else</code> (se e a
 >ltrimenti) che possono essere concatenati insieme se desiderato:
n328      JavaScript has <code>while</code> loops and <code>do-while<n328      JavaScript ha il ciclo <code>while</code> ed il ciclo <code
>/code> loops. The first is good for basic looping; the second for>>do-while</code>. Il primo è utile per un ciclo basico; il second
> loops where you wish to ensure that the body of the loop is exec>o per i cicli che si vuole essere sicuri che vengano eseguito alm
>uted at least once:>eno una volta:
n341      JavaScript's <code>for</code> loop is the same as that in Cn341      Il ciclo <code>for</code> in JavaScript è lo stesso che in 
> and Java: it lets you provide the control information for your l>C e Java: esso permette di fornire le informazioni di controllo p
>oop on a single line.>er il ciclo in una linea singola.
n349      The <code>&amp;&amp;</code> and <code>||</code> operators un349      Gli operatori <code>&amp;&amp;</code> e <code>||</code> usa
>se short-circuit logic, which means whether they will execute the>no un corto-circuito logico, che significa che quando sono esegui
>ir second operand is dependent on the first. This is useful for c>to il secondo operando è dipendente dal primo. Questo è utile per
>hecking for null objects before accessing their attributes:> verificare oggetti nulli prima di accedere i lori attributi:
n355      Or for setting default values:n355      Oppure per impostare valori di default:
n361      JavaScript has a ternary operator for conditional expression361      JavaScript ha un operatore ternario per espressioni condizi
>ns:>onali:
n367      The switch statement can be used for multiple branches basen367      <span id="result_box" lang="it"><span class="hps">L'istruzi
>d on a number or string:>one switch</span> <span class="hps alt-edited">può essere utilizz
 >ata per</span> <span class="hps alt-edited">più diramazioni</span
 >> <span class="hps">sulla base di un</span> <span class="hps">num
 >ero o una stringa</span></span>:
n382      If you don't add a <code>break</code> statement, execution n382      Se non viene inserita l'istruzione <code>break</code>, l'es
>will "fall through" to the next level. This is very rarely what y>ecuzione "naufragherà" nel prossimo livello. Questo è raramente i
>ou want — in fact it's worth specifically labelling deliberate fa>l risultato voluto — <span id="result_box" lang="it"><span class=
>llthrough with a comment if you really meant it to aid debugging:>"hps">in realtà</span> <span class="hps">vale la pena</span> <spa
 >n class="hps">in particolare</span> inserire un <span class="hps"
 >>etichettatura</span>&nbsp;<span class="hps">deliberatamente&nbsp
 >;</span><span class="hps">con</span> <span class="hps">un comment
 >o,</span> <span class="hps">se vi</span> <span class="hps">vuole<
 >/span> <span class="hps">aiutare</span> <span class="hps">il debu
 >g</span></span>:
n395      The default clause is optional. You can have expressions inn395      La clausula default è opzionale. Si possono avere espressio
> both the switch part and the cases if you like; comparisons take>ni sia nello switch sia che nel case se si vuole; You can have ex
> place between the two using the <code>===</code> operator:>pressions in both the switch part and the cases if you like; <spa
 >n id="result_box" lang="it"><span class="hps">i confronti</span> 
 ><span class="hps">avvengono tra</span> <span class="hps">i due</s
 >pan> <span class="hps">con</span> <span class="hps">l'operatore =
 >==</span></span>:
n407      Objectsn407      Oggetti
408    </h2>
409    <p>408    </h2>
410      JavaScript objects are simply collections of name-value pai409    <p>
>rs. As such, they are similar to: 
410      Gli oggetti JavaScript sono semplicemente collezioni di cop
 >pie nome-valore. <span class="short_text" id="result_box" lang="i
 >t"><span class="hps">Come tali</span><span>,</span> <span class="
 >hps">essi sono</span> <span class="hps">simili a</span></span>:
n413      <li>Dictionaries in Pythonn413      <li>Dizionari in Python
n415      <li>Hashes in Perl and Rubyn415      <li>Hashes in Perl e Ruby
t417      <li>Hash tables in C and C++t417      <li>Hash tables in C e C++

Torna allo storico