Diferencia entre usar la palabra "var" y no usarla en Javascript

Publicado por Emily Plank
hace 10 años

<p>Por qué tengo que utilizar la palabra <strong>var</strong> para declarar una variable si puedo no utilizarla ? Es decir, cuál es la diferencia en declarar las variables de esta forma:</p>

<pre class="prettyprint"> var numero = 10;</pre>

<p>Y declararlas de esta otra forma:</p>

<pre class="prettyprint"> numero = 10;</pre>

<p>Gracias.<br />  </p>

javascript
Respuesta de Laura
hace 10 años

<p>Si estás en el ámbito <strong>global</strong> entonces no hay diferencia. Pero si estás dentro de una función, al usar la palabra var se creará una variable <strong>local</strong> y al no usarla se buscará una variable declarada globalmente! Mira un ejemplo.</p>

<pre class="prettyprint"> var numero = 10; nombre = "Laura";

( function( ) { numero = 5; // Aquí se re asigna la variable número que ha sido declarada más arriba var nombre = "Lau"; // Aquí se crea una variable como la de arriba pero esta es LOCAL }) ( );

console.log( numero ); // Mostrará 5 console.log( nombre ); // Mostrará Laura</pre>

<p>Deberías utilizar <strong>var</strong> siempre que <strong>declares</strong> una variable nueva para evitar cualquier tipo deproblema.</p>