CoffeeScript - Variables

Las variables no son más que contenedores con nombre. Puede colocar datos en estos contenedores y luego hacer referencia a los datos utilizando el nombre de su contenedor.

Variables de CoffeeScript

En JavaScript, antes de usar una variable, necesitamos declararla e inicializarla (asignar valor). A diferencia de JavaScript, al crear una variable en CoffeeScript, no es necesario declararla utilizando elvarpalabra clave. Simplemente creamos una variable simplemente asignando un valor a un literal como se muestra a continuación.

name = variable name

Ejemplo

En el siguiente código de CoffeeScript, hemos definido dos variables name y age, de tipos de datos de cadena y número, respectivamente. Guárdalo en un archivo con el nombrevariable_example.coffee.

name = "Javed"
age = 25

Compiling the code

Compile el código CoffeeScript anterior ejecutando el siguiente comando en el símbolo del sistema.

c:\> compile -c variable_example.coffee

Al compilar, un archivo JavaScript llamado variable_example.jsse generará con el siguiente contenido. Aquí puede observar que el compilador declaró las variables (edad y nombre) usando elvar palabra clave en nombre de nosotros.

// Generated by CoffeeScript 1.10.0
(function() {
  var age, name;
  name = "Javed";
  age = 25;
  
}).call(this);

Alcance variable

El alcance de una variable es la región de su programa en la que está definida. Las variables de JavaScript y CoffeeScript solo tienen dos ámbitos.

  • Global Variables - Una variable global tiene un alcance global, lo que significa que se puede utilizar en cualquier parte de su código JavaScript.

  • Local Variables- Una variable local será visible solo dentro de una función donde esté definida. Los parámetros de la función son siempre locales para esa función.

El problema con las variables en JavaScript

En JavaScript, siempre que definimos una variable sin usar el varpalabra clave, se crea con alcance global. Esto causa muchos problemas. Considere el siguiente ejemplo:

<script type = "text/javascript">
   var i = 10;
   document.write("The value of global variable i is "+ i);   
   document.write("<br>");
   test();
   function test() {
      i = 20;
      document.write("The value of local variable i is "+i);
      document.write("<br>");
   }
   document.write("The value of global variable i is "+i);
</script>

Al ejecutar, el JavaScript anterior le da el siguiente resultado:

The value of global variable i is 10

The value of local variable i is 20

The value of global variable i is 20

En el ejemplo anterior, hemos creado una variable llamada ien el espacio global y le asignó el valor 10. Y dentro de la función, en un intento de crear una variable local con el mismo nombre, hemos declarado como i = 20 ; sin la palabra clave var. Desde que perdimos elvar palabra clave, el valor de la variable global i se reasigna a 20.

Por este motivo, se recomienda declarar variables utilizando el var palabra clave.

Alcance variable en CoffeeScript

Siempre que compilamos un archivo CoffeeScript, el compilador CoffeeScript crea una función anónima, y ​​dentro de esa función, transcompila el código CoffeeScript en JavaScript línea por línea. (Si queremos, podemos eliminar el contenedor de la función de nivel superior usando el-b o --bare opción del comando de compilación) Cada variable que creamos se declara usando la var palabra clave dentro de la función anónima y, por lo tanto, de forma predeterminada, cada variable es local en CoffeeScript.

(function() {
  var age, name;
  name = "javed";
  age = 20;
}).call(this);

De todos modos, si queremos, podemos declarar una variable con espacio de nombres global. Podemos hacerlo explícitamente como se muestra a continuación.

obj = this
obj.age = 30

Nombres de variables de CoffeeScript (literales)

Al nombrar sus variables en CoffeeScript, tenga en cuenta las siguientes reglas.

  • No debe utilizar ninguna de las palabras clave reservadas de CoffeeScript como nombre de variable. Estas palabras clave se mencionan en la siguiente sección. Por ejemplo, los nombres de variable booleana o break no son válidos.

  • Los nombres de las variables de CoffeeScript no deben comenzar con un número (0-9). Deben comenzar con una letra o un carácter de subrayado. Por ejemplo, 123test es un nombre de variable no válido, pero _123test es válido.

  • Los nombres de las variables de CoffeeScript distinguen entre mayúsculas y minúsculas. Por ejemplo,Name y name son dos variables diferentes.