lunes, 8 de octubre de 2012

Valores literales

Ya se ha mencionado en el apartado de características del lenguaje JavaScript en la sección tipología débil, que en JavaScript las variables no se declaran como de un tipo de dato específico y que una vez asignado el valor a la variable, es posible asignarle un tipo de valor completamente distinto, sin que esto provoque error alguno.
No obstante, lo anterior, en JavaScript se definen una clase especial de datos que se conocen como literales que hacen referencia a los valores concretos y fijos que se pueden asignar a las variables. Estos literales se dividen en tres tipos:
  1. Literales numéricos.
  2. Literales de cadena.
  3. Literales lógicos (o booleanos).

Literales numéricos.
En JavaScript todos los valores numéricos son considerados de un mismo tipo, no se clasifican en enteros, flotantes o dobles, como se hace en otros lenguajes. Son ejemplos de literales numéricos los siguientes valores:
0
45
2012
-58
0.09
3.14159
-15.5

También es posible representar los números enteros que sean demasiado grandes o demasiado pequeños en notación exponencial. Esta notación emplea la letra e o E seguida de un signo más (+) o de un signo menos (-), dependiendo de si el número es mucho mayor que cero o si el número es mucho muy cercano al valor cero.

Ejemplo:
9.87654e+5

El número anterior se puede convertir a un entero normal, multiplicando la parte del número que antecede a la letra e o E por 10 elevado al número que sigue al signo más (+). Así, multiplicaríamos 9.87654 * 10^5 con lo que obtendríamos 987,654.

Ejemplo:
3.4567e-4

En este caso el número que precede a la letra e debe dividirse entre 10 elevado al exponente indicado después del signo menos (-). Así, al dividir 3.4567 entre 10 elevado a la cuarta potencia (4) nos daría por resultado 0.00034567.

JavaScript también acepta valores enteros expresados en notación octal (base 8) o hexadecimal (base 16). Para indicar a JavaScript que un número está siendo representado en notación octal debe anteponer un 0 al número. De modo que, para representar un 11 decimal en octal, debe colocar el siguiente valor: 013.

En el caso de querer representar un número en notación hexadecimal en JavaScript, debe anteponer un cero y una letra equis, mayúscula o minúscula, al número. Estos números están todos en notación hexadecimal:
0x1F
0X93
0x19C0


Literales de cadena.
Una cadena es una secuencia de uno o varios caracteres que pueden ser letras, números o símbolos encerrados entre comillas dobles ("") o simples (''). Dicho esto, serían cadenas los siguientes literales:
"JavaScript"
"2 de noviembre del 2012"
'Ingrese un número'

Algunos caracteres en JavaScript para que puedan formar parte de una cadena deben ser escapados. Por ejemplo, si se está usando la comilla doble como delimitador y desea que una o más comillas dobles sean parte de la cadena, necesitará de algún medio para indicarle a JavaScript que la doble comilla que se está ingresando no es la de cierre de la cadena, si no un carácter más que formará parte de la cadena. Por ejemplo:
"JavaScript es un lenguaje \"interpretado\" en el cliente"

Del mismo modo, se puede requerir escapar caracteres de comilla simple en una cadena delimitada precisamente con comilla simple.
'<p class=\'primero\'>JavaScript en un lenguaje "interpretado" en el cliente.</p>'


Literales lógicos (booleanos).
Los literales lógicos que se pueden utilizar en JavaScript son los mismos que se utilizan en la mayoría de lenguajes que ya conoce, son el valor true para indicar verdadero y el valor false para indicar falso.
Aunque esto pueda dar la impresión de no ser muy útil, la posibilidad de comprobar si una variable o expresión condicional es verdadera o falsa resulta de mucho valor para la programación en JavaScript.

No hay comentarios:

Publicar un comentario

Con mucho agrado les presento este pequeño manual en forma de blog sobre el lenguaje JavaScript. Espero comentarios de su parte que ayuden a mejorar este trabajo. Aclaro que me he enfocado en un inicio en el JavaScript puro, sin framework. Tal vez más adelante y dedicando algún tiempo en aprenderlos, pueda adentrarme en algún manual de framework JavaScript posteriormente.