Facebook

Comunicate a través de www.facebook.com

miércoles, 6 de julio de 2016

TIPOS DE VARIABLES

JavaScript divide los distintos tipos de variables en dos grupos: tipos primitivos y tipos de referencia o clases.

Tipos primitivos

JavaScript define cinco tipos primitivos: undefined, null, boolean, number y string. Además de estos tipos, JavaScript define el operador typeof para averiguar el tipo de una variable.

El operador typeof

El operador typeof se emplea para determinar el tipo de dato que almacena una variable. Su uso es muy sencillo, ya que sólo es necesario indicar el nombre de la variable cuyo tipo se quiere averiguar:
var variable1 = 7;
typeof variable1;  // "number"
var variable2 = "hola mundo";
typeof variable2;  // "string"
Los posibles valores de retorno del operador son: undefined, boolean, number, string para cada uno de los tipos primitivos y object para los valores de referencia y también para los valores de tipo null.

Variables de tipo undefined

El tipo undefined corresponde a las variables que han sido definidas y todavía no se les ha asignado un valor:
var variable1;
typeof variable1;  // devuelve "undefined"
El operador typeof no distingue entre las variables declaradas pero no inicializadas y las variables que ni siquiera han sido declaradas:
var variable1;
typeof variable1;  // devuelve "undefined", aunque la variable1 ha sido declarada
typeof variable2;  // devuelve "undefined", la variable2 no ha sido declarada

Variables de tipo null

Se trata de un tipo similar a undefined, y de hecho en JavaScript se consideran iguales (undefined == null). El tipo null se suele utilizar para representar objetos que en ese momento no existen.
var nombreUsuario = null;

 Variables de tipo boolean

Además de variables de tipo boolean, también se suelen llamar variables lógicas y variables booleanas. Se trata de una variable que sólo puede almacenar uno de los dos valores especiales definidos y que representan el valor "verdadero" y el valor "falso".
var variable1 = true;
var variable2 = false;
Los valores true y false son valores especiales, de forma que no son palabras ni números ni ningún otro tipo de valor. Este tipo de variables son esenciales para crear cualquier aplicación, tal y como se verá más adelante.
Cuando es necesario convertir una variable numérica a una variable de tipo boolean, JavaScript aplica la siguiente conversión: el número 0 se convierte en false y cualquier otro número distinto de 0 se convierte en true.
Por este motivo, en ocasiones se asocia el número 0 con el valor false y el número 1 con el valor true. Sin embargo, es necesario insistir en que true y false son valores especiales que no se corresponden ni con números ni con ningún otro tipo de dato.

Variables de tipo numérico

Las variables numéricas son muy utilizadas en las aplicaciones habituales, ya que permiten almacenar cualquier valor numérico. Si el número es entero, se indica directamente. Si el número es decimal, se debe utilizar el punto (.) para separar la parte entera de la decimal.
var variable1 = 10;
var variable2 = 3.14159265;
Además del sistema numérico decimal, también se pueden indicar valores en el sistema octal (si se incluye un cero delante del número) y en sistema hexadecimal (si se incluye un cero y una x delante del número).
var variable1 = 10;
var variable_octal = 034;
var variable_hexadecimal = 0xA3;
JavaScript define tres valores especiales muy útiles cuando se trabaja con números. En primer lugar se definen los valores Infinity y –Infinity para representar números demasiado grandes (positivos y negativos) y con los que JavaScript no puede trabajar.
var variable1 = 3, variable2 = 0;
alert(variable1/variable2);  // muestra "Infinity"
El otro valor especial definido por JavaScript es NaN, que es el acrónimo de "Not a Number". De esta forma, si se realizan operaciones matemáticas con variables no numéricas, el resultado será de tipo NaN.
Para manejar los valores NaN, se utiliza la función relacionada isNaN(), que devuelve true si el parámetro que se le pasa no es un número:
var variable1 = 3;
var variable2 = "hola";
isNaN(variable1);  // false
isNaN(variable2);  // true
isNaN(variable1 + variable2);  // true
Por último, JavaScript define algunas constantes matemáticas que representan valores numéricos significativos:
Constante
Valor
Significado
Math.E
2.718281828459045
Constante de Euler, base de los logaritmos naturales y también llamado número e
Math.LN2
0.6931471805599453
Logaritmo natural de 2
Math.LN10
2.302585092994046
Logaritmo natural de 10
Math.LOG2E
1.4426950408889634
Logaritmo en base 2 de Math.E
Math.LOG10E
0.4342944819032518
Logaritmo en base 10 de Math.E
Math.PI
3.141592653589793
Pi, relación entre la longitud de una circunferencia y su diámetro
Math.SQRT1_2
0.7071067811865476
Raíz cuadrada de 1/2
Math.SQRT2
1.4142135623730951
Raíz cuadrada de 2
De esta forma, para calcular el área de un círculo de radio r, se debe utilizar la constante que representa al número Pi:
var area = Math.PI * r * r;

Variables de tipo cadena de texto

Las variables de tipo cadena de texto permiten almacenar cuaquier sucesión de caracteres, por lo que se utilizan ampliamente en la mayoría de aplicaciones JavaScript. Cada carácter de la cadena se encuentra en una posición a la que se puede acceder individualmente, siendo el primer carácter el de la posición 0.
El valor de las cadenas de texto se indica encerrado entre comillas simples o dobles:
var variable1 = "hola";
var variable2 = 'mundo';
var variable3 = "hola mundo, esta es una frase más larga";
Las cadenas de texto pueden almacenar cualquier carácter, aunque algunos no se pueden incluir directamente en la declaración de la variable. Si por ejemplo se incluye un ENTER para mostrar el resto de caracteres en la línea siguiente, se produce un error en la aplicación:
var variable = "hola mundo, esta es 
una frase más larga";
La variable anterior no está correctamente definida y se producirá un error en la aplicación. Por tanto, resulta evidente que algunos caracteres especiales no se pueden incluir directamente. De la misma forma, como las comillas (doble y simple) se utilizan para encerrar los contenidos, también se pueden producir errores:
var variable1 = "hola 'mundo'";
var variable2 = 'hola "mundo"';
var variable3 = "hola 'mundo', esta es una "frase" más larga";
Si el contenido de texto tiene en su interior alguna comilla simple, se encierran los contenidos con comillas dobles (como en el caso de la variable1 anterior). Si el contenido de texto tiene en su interior alguna comilla doble, se encierran sus contenidos con comillas simples (como en el caso de la variable2 anterior). Sin embargo, en el caso de la variable3 su contenido tiene tanto comillas simples como comillas dobles, por lo que su declaración provocará un error.
Para resolver estos problemas, JavaScript define un mecanismo para incluir de forma sencilla caracteres especiales (ENTER, Tabulador) y problemáticos (comillas). Esta estrategia se denomina "mecanismo de escape", ya que se sustituyen los caracteres problemáticos por otros caracteres seguros que siempre empiezan con la barra \:
Si se quiere incluir...
Se debe sustituir por...
Una nueva línea
\n
Un tabulador
\t
Una comilla simple
\'
Una comilla doble
\"
Una barra inclinada
\\
Utilizando el mecanismo de escape, se pueden corregir los ejemplos anteriores:
var variable = "hola mundo, esta es \n una frase más larga";
var variable3 = "hola 'mundo', esta es una \"frase\" más larga";

 Conversión entre tipos de variables

JavaScript es un lenguaje de programación "no tipado", lo que significa que una misma variable puede guardar diferentes tipos de datos a lo largo de la ejecución de la aplicación. De esta forma, una variable se podría inicializar con un valor numérico, después podría almacenar una cadena de texto y podría acabar la ejecución del programa en forma de variable booleana.
No obstante, en ocasiones es necesario que una variable almacene un dato de un determinado tipo. Para asegurar que así sea, se puede convertir una variable de un tipo a otro, lo que se denomina typecasting:
Así, JavaScript incluye un método llamado toString() que permite convertir variables de cualquier tipo a variables de cadena de texto, tal y como se muestra en el siguiente ejemplo:
var variable1 = true;
variable1.toString();  // devuelve "true" como cadena de texto
var variable2 = 5;
variable2.toString();  // devuelve "5" como cadena de texto
JavaScript también incluye métodos para convertir los valores de las variables en valores numéricos. Los métodos definidos son parseInt() y parseFloat(), que convierten la variable que se le indica en un número entero o un número decimal respectivamente.
La conversión numérica de una cadena se realiza carácter a carácter empezando por el de la primera posición. Si ese carácter no es un número, la función devuelve el valor NaN. Si el primer carácter es un número, se continúa con los siguientes caracteres mientras estos sean números.
var variable1 = "hola";
parseInt(variable1);  // devuelve NaN
var variable2 = "34";
parseInt(variable2);  // devuelve 34
var variable3 = "34hola23";
parseInt(variable3);  // devuelve 34
var variable4 = "34.23";
parseInt(variable4);  // devuelve 34
En el caso de parseFloat(), el comportamiento es el mismo salvo que también se considera válido el carácter . que indica la parte decimal del número:
var variable1 = "hola";
parseFloat(variable1);  // devuelve NaN
var variable2 = "34";
parseFloat(variable2);  // devuelve 34.0
var variable3 = "34hola23";
parseFloat(variable3);  // devuelve 34.0
var variable4 = "34.23";

parseFloat(variable4);  // devuelve 34.23
JavaScript divide los distintos tipos de variables en dos grupos: tipos primitivos y tipos de referencia o clases.

Tipos primitivos

JavaScript define cinco tipos primitivos: undefined, null, boolean, number y string. Además de estos tipos, JavaScript define el operador typeof para averiguar el tipo de una variable.

El operador typeof

El operador typeof se emplea para determinar el tipo de dato que almacena una variable. Su uso es muy sencillo, ya que sólo es necesario indicar el nombre de la variable cuyo tipo se quiere averiguar:
var variable1 = 7;
typeof variable1;  // "number"
var variable2 = "hola mundo";
typeof variable2;  // "string"
Los posibles valores de retorno del operador son: undefined, boolean, number, string para cada uno de los tipos primitivos y object para los valores de referencia y también para los valores de tipo null.

Variables de tipo undefined

El tipo undefined corresponde a las variables que han sido definidas y todavía no se les ha asignado un valor:
var variable1;
typeof variable1;  // devuelve "undefined"
El operador typeof no distingue entre las variables declaradas pero no inicializadas y las variables que ni siquiera han sido declaradas:
var variable1;
typeof variable1;  // devuelve "undefined", aunque la variable1 ha sido declarada
typeof variable2;  // devuelve "undefined", la variable2 no ha sido declarada

Variables de tipo null

Se trata de un tipo similar a undefined, y de hecho en JavaScript se consideran iguales (undefined == null). El tipo null se suele utilizar para representar objetos que en ese momento no existen.
var nombreUsuario = null;

 Variables de tipo boolean

Además de variables de tipo boolean, también se suelen llamar variables lógicas y variables booleanas. Se trata de una variable que sólo puede almacenar uno de los dos valores especiales definidos y que representan el valor "verdadero" y el valor "falso".
var variable1 = true;
var variable2 = false;
Los valores true y false son valores especiales, de forma que no son palabras ni números ni ningún otro tipo de valor. Este tipo de variables son esenciales para crear cualquier aplicación, tal y como se verá más adelante.
Cuando es necesario convertir una variable numérica a una variable de tipo boolean, JavaScript aplica la siguiente conversión: el número 0 se convierte en false y cualquier otro número distinto de 0 se convierte en true.
Por este motivo, en ocasiones se asocia el número 0 con el valor false y el número 1 con el valor true. Sin embargo, es necesario insistir en que true y false son valores especiales que no se corresponden ni con números ni con ningún otro tipo de dato.

Variables de tipo numérico

Las variables numéricas son muy utilizadas en las aplicaciones habituales, ya que permiten almacenar cualquier valor numérico. Si el número es entero, se indica directamente. Si el número es decimal, se debe utilizar el punto (.) para separar la parte entera de la decimal.
var variable1 = 10;
var variable2 = 3.14159265;
Además del sistema numérico decimal, también se pueden indicar valores en el sistema octal (si se incluye un cero delante del número) y en sistema hexadecimal (si se incluye un cero y una x delante del número).
var variable1 = 10;
var variable_octal = 034;
var variable_hexadecimal = 0xA3;
JavaScript define tres valores especiales muy útiles cuando se trabaja con números. En primer lugar se definen los valores Infinity y –Infinity para representar números demasiado grandes (positivos y negativos) y con los que JavaScript no puede trabajar.
var variable1 = 3, variable2 = 0;
alert(variable1/variable2);  // muestra "Infinity"
El otro valor especial definido por JavaScript es NaN, que es el acrónimo de "Not a Number". De esta forma, si se realizan operaciones matemáticas con variables no numéricas, el resultado será de tipo NaN.
Para manejar los valores NaN, se utiliza la función relacionada isNaN(), que devuelve true si el parámetro que se le pasa no es un número:
var variable1 = 3;
var variable2 = "hola";
isNaN(variable1);  // false
isNaN(variable2);  // true
isNaN(variable1 + variable2);  // true
Por último, JavaScript define algunas constantes matemáticas que representan valores numéricos significativos:
Constante
Valor
Significado
Math.E
2.718281828459045
Constante de Euler, base de los logaritmos naturales y también llamado número e
Math.LN2
0.6931471805599453
Logaritmo natural de 2
Math.LN10
2.302585092994046
Logaritmo natural de 10
Math.LOG2E
1.4426950408889634
Logaritmo en base 2 de Math.E
Math.LOG10E
0.4342944819032518
Logaritmo en base 10 de Math.E
Math.PI
3.141592653589793
Pi, relación entre la longitud de una circunferencia y su diámetro
Math.SQRT1_2
0.7071067811865476
Raíz cuadrada de 1/2
Math.SQRT2
1.4142135623730951
Raíz cuadrada de 2
De esta forma, para calcular el área de un círculo de radio r, se debe utilizar la constante que representa al número Pi:
var area = Math.PI * r * r;

Variables de tipo cadena de texto

Las variables de tipo cadena de texto permiten almacenar cuaquier sucesión de caracteres, por lo que se utilizan ampliamente en la mayoría de aplicaciones JavaScript. Cada carácter de la cadena se encuentra en una posición a la que se puede acceder individualmente, siendo el primer carácter el de la posición 0.
El valor de las cadenas de texto se indica encerrado entre comillas simples o dobles:
var variable1 = "hola";
var variable2 = 'mundo';
var variable3 = "hola mundo, esta es una frase más larga";
Las cadenas de texto pueden almacenar cualquier carácter, aunque algunos no se pueden incluir directamente en la declaración de la variable. Si por ejemplo se incluye un ENTER para mostrar el resto de caracteres en la línea siguiente, se produce un error en la aplicación:
var variable = "hola mundo, esta es 
una frase más larga";
La variable anterior no está correctamente definida y se producirá un error en la aplicación. Por tanto, resulta evidente que algunos caracteres especiales no se pueden incluir directamente. De la misma forma, como las comillas (doble y simple) se utilizan para encerrar los contenidos, también se pueden producir errores:
var variable1 = "hola 'mundo'";
var variable2 = 'hola "mundo"';
var variable3 = "hola 'mundo', esta es una "frase" más larga";
Si el contenido de texto tiene en su interior alguna comilla simple, se encierran los contenidos con comillas dobles (como en el caso de la variable1 anterior). Si el contenido de texto tiene en su interior alguna comilla doble, se encierran sus contenidos con comillas simples (como en el caso de la variable2 anterior). Sin embargo, en el caso de la variable3 su contenido tiene tanto comillas simples como comillas dobles, por lo que su declaración provocará un error.
Para resolver estos problemas, JavaScript define un mecanismo para incluir de forma sencilla caracteres especiales (ENTER, Tabulador) y problemáticos (comillas). Esta estrategia se denomina "mecanismo de escape", ya que se sustituyen los caracteres problemáticos por otros caracteres seguros que siempre empiezan con la barra \:
Si se quiere incluir...
Se debe sustituir por...
Una nueva línea
\n
Un tabulador
\t
Una comilla simple
\'
Una comilla doble
\"
Una barra inclinada
\\
Utilizando el mecanismo de escape, se pueden corregir los ejemplos anteriores:
var variable = "hola mundo, esta es \n una frase más larga";
var variable3 = "hola 'mundo', esta es una \"frase\" más larga";

 Conversión entre tipos de variables

JavaScript es un lenguaje de programación "no tipado", lo que significa que una misma variable puede guardar diferentes tipos de datos a lo largo de la ejecución de la aplicación. De esta forma, una variable se podría inicializar con un valor numérico, después podría almacenar una cadena de texto y podría acabar la ejecución del programa en forma de variable booleana.
No obstante, en ocasiones es necesario que una variable almacene un dato de un determinado tipo. Para asegurar que así sea, se puede convertir una variable de un tipo a otro, lo que se denomina typecasting:
Así, JavaScript incluye un método llamado toString() que permite convertir variables de cualquier tipo a variables de cadena de texto, tal y como se muestra en el siguiente ejemplo:
var variable1 = true;
variable1.toString();  // devuelve "true" como cadena de texto
var variable2 = 5;
variable2.toString();  // devuelve "5" como cadena de texto
JavaScript también incluye métodos para convertir los valores de las variables en valores numéricos. Los métodos definidos son parseInt() y parseFloat(), que convierten la variable que se le indica en un número entero o un número decimal respectivamente.
La conversión numérica de una cadena se realiza carácter a carácter empezando por el de la primera posición. Si ese carácter no es un número, la función devuelve el valor NaN. Si el primer carácter es un número, se continúa con los siguientes caracteres mientras estos sean números.
var variable1 = "hola";
parseInt(variable1);  // devuelve NaN
var variable2 = "34";
parseInt(variable2);  // devuelve 34
var variable3 = "34hola23";
parseInt(variable3);  // devuelve 34
var variable4 = "34.23";
parseInt(variable4);  // devuelve 34
En el caso de parseFloat(), el comportamiento es el mismo salvo que también se considera válido el carácter . que indica la parte decimal del número:
var variable1 = "hola";
parseFloat(variable1);  // devuelve NaN
var variable2 = "34";
parseFloat(variable2);  // devuelve 34.0
var variable3 = "34hola23";
parseFloat(variable3);  // devuelve 34.0
var variable4 = "34.23";

parseFloat(variable4);  // devuelve 34.23


Fuente de Información: http://librosweb.es/libro/javascript/capitulo_3/tipos_de_variables.html
http://aprenderaprogramar.com/index.php?option=com_content&view=article&id=544:tipos-de-variables-en-php-declaracion-y-asignacion-sentencia-echo-insertar-texto-en-el-html-cu00816b&catid=70:tutorial-basico-programador-web-php-desde-cero&Itemid=193

0 comentarios:

Publicar un comentario