Buscador

Not (!)

El operador ! devuelve el valor contrario de una expresión, de forma que si la expresión es verdadera, la aplicación de este operador sobre esa variable devolverá Falso, mientras que si la expresión original es falsa, la aplicación del operador ! devolverá verdadero.

Operadores lógicos

Los operadores lógicos devuelven un valor Booleano (verdadero / falso) en función de las expresiones que estos evalúen. Javascript permite los siguientes operadores lógicos:
And ( && )
El operador && devuelve Verdadero cuando las dos expresiones que evalúa son verdaderas, de tal forma x && y devuelve verdadero solo cuando tanto X como Y son verdaderas. A continuación se especifican todas las situaciones.
V && V = V
F && V = F
V && F = F

F && F = F

Negación (-)

El operador de negación precede a una variable o constante, y se utilizará para convertir el valor de una expresión en su opuesto, o para cambiar de signo un valor.
-x

Operador de Decremento (--)

El decremento es semejante al operador anterior, aunque en lugar de incrementar una unidad, la resta de la variable que preceda al operador.
x -- //Equivale a x = x - 1
-- x //Equivale a x = x - 1, pero decrementa la variable primero, antes de usarse Al igual que el operador de incremento, en una asignación no actúa igual Y = --X que Y = X-- Ya que la primera decrementa X antes de asignar el valor a Y, mientras que la segunda asigna a Y el valor de X ya decrementado.

Operador de Auto-incremento (++)

Este operador se utiliza para incrementar el valor de una variable en una unidad, sea el tipo que sea la base numeral utilizada.
x ++ //Equivale a x = x + 1
++ x //Equivale a x = x + 1, pero incrementa la variable primero,
antes de usarse
El operador de incremento se puede usar de dos formas diferentes cuando lo asignamos a una variable, de forma que si declaramos que Y = X++ para un valor de X = 5, primero se asignará el valor a Y, y luego se incrementará la variable X. Así, queda X = 6 e Y = 5.
Si declararemos la asignación del otro modo, Y = ++X para el mismo valor de X, primero se incrementaría la X, y después se asignaría el valor a la variable Y. Así, el resultado de la operación sería el siguiente: X = 6 e Y = 6

Aritméticos

Los operadores aritméticos toman una pareja de valores y devuelven uno solo. Los operadores
estándar son:
• Adición (+)
• Substracción (-)
• Multiplicación (*)
• División (/)
Aparte de estos, el lenguaje aporta los siguientes operadores adicionales:
Modulo (%)
Devuelve el resto resultante de la división de los valores iniciales, lo vemos en el Código fuente 58.
z = x % y
20 % 6 = 2

Operadores De comparación

Son los utilizados para comparar valores, constantes o variables, siempre que estas sean del mismo tipo, esto es, semejantes. Entendiendo por tal, que -caso de no ser idénticas- puedan ser convertidas al tipo adecuado para la comparación.
Los operadores de comparación estándar de Javascript son:
• Igualdad ( = = )
• Mayor que ( >)
• Menor que ( < ) • Mayor o igual (> = )
• Menor o igual ( <= )
• Distinto ( != )

Operadores

Javascript define un amplio conjunto de operadores, que podemos analizar por categorías: de comparación, aritméticos, lógicos, de concatenación de cadena, de asignación y de desplazamiento

Sentencias

Un programa en Javascript es una colección de sentencias, combinadas de una forma dada para permitir la ejecución de una tarea. Una sentencia consta de una o más expresiones formadas mediante palabras reservadas, operadores, estructuras de control y otros elementos del lenguaje. En Javascript se utiliza el símbolo de punto y coma para indicar la finalización de una sentencia.
Para agrupar sentencias, utilizaremos sin embargo las llaves {, }, tal y como veremos en el apartado dedicado a las estructuras de control.

Características del lenguaje Javascript

Como cualquier otro lenguaje de script Javascript no genera ejecutables, sino que se basa en una librería de Runtime (tiempo de ejecución), que interpreta las sentencias según son invocadas por los mecanismos programados al efecto. No obstante, Javascript pone a disposición del programador una serie de recursos propios en forma de operadores, palabras reservadas, estructuras de control,
declaración de variables, y sentencias de todo tipo, así como un conjunto de convenciones lingüísticas que deben de respetarse si se quiere codificar de acuerdo con el estándar. Vamos revisar lo más importante de sus características, y –a continuación- propondremos una serie de ejercicios típicos para que el lector pueda juzgar sus posibilidades a partir de situaciones reales, en lugar de abordar ejemplos
para cada operador, estructura, palabra reservada, etc. Al lector interesado en un manual exhaustivo de Javascript podemos recomendarle “Javascript Unleashed”, de R. Wagner, Ed. SAMS.

Objetos de Java Script de servidor

Los objetos de script de servidor son los encargados de enlazar con fuentes de datos de cualquier tipo, almacenadas en el servidor, bien en forma de Base de datos, bien en forma de archivo de datos, que en su versión más actualizada puede adoptar el formato XML para independizarse completamente de la plataforma que lo soporta. A continuación mostramos en la Figura 28, un típico modelo de objetos de servidor.


No obstante, al no ser materia de este curso vuelvo a remitir al lector a las referencias del capítulo 1º si desea obtener más información sobre este apartado. Nosotros vamos a centrarnos ahora en el script de cliente, en las características del lenguaje, y en el propio modelo de objetos de Javascript.

Javascript y el escenario de ejecución

Como cualquier otro lenguaje de script, Javascript puede utilizarse para construir páginas de servidor
o de cliente. Y como es lógico, dependiendo de ese escenario de ejecución, tendrá acceso a diferentes
modelos de objetos. Ya vimos el modelos de objetos de documento (DOM) que representa al
navegador, en el caso del cliente.
Los Scripts de servidor se utilizan para realizar operaciones sobre objetos del servidor, tales como la
ejecución de una conexión sobre una base de datos existente, una consulta SQL o un acceso a su
sistema de archivos, por lo tanto el modelo de objetos variará según se trate de un servidor u otro
(Internet Information Server, Oracle Web Server, Apache Web Server, etc.).
A diferencia de los scripts de cliente, los de servidor se ejecutan como si de un programa
ejecutable.EXE se tratase, aunque enviando el resultado a un navegador. Pero para ello, es necesario
que la página se almacene en el servidor en una carpeta ejecutable, y que este tenga instalado el
"Javascript Runtime Engine" o motor de Javascript, que será el encargado de procesar las páginas que
contengan este tipo de código. Al operar de esta forma, se devuelven al usuario los resultados de la
ejecución del código de servidor, y no el propio código, que no sería capaz de interpretar.
En contraste con los CGI standard (Common Gateway Interface) los programas en Javascript, están
embebidos en la página, junto con el código HTML facilitando enormemente el mantenimiento de las
páginas.

Oficialidad, Autoría y Estandarización

En cuanto al aspecto oficial del establecimiento de estándares, hay que recordar que –en este caso- no
es la W3C la encargada de su promoción y publicación como estándar, sino otra entidad de
normalización: ECMA. El lector interesado, puede consultar la página web oficial del sitio ECMA
(www.ecma.ch) y descargar la especificación, tal y como está publicada allí, al ser un documento
público. Respecto a su autoría, el propio documento oficial del estándar nos dice que:

“Este estándar ECMA está basado en varias tecnologías originales bien conocidas, entre las que destacan JavaScript (Netscape), y JScript (Microsoft). El lenguaje fue inventado por Brendan Eich, de Netscape y apareció por primera vez en la versión 2.0 de Navigator. Ha continuado apareciendo en todos los navegadores posteriores, así como en todos los navegadores de Microsoft, comenzando por la versión 3.0 de Internet Explorer.
El desarrollo de éste estándar comenzó en Noviembre de 1996. La primera edición del estándar ECMA fue adoptado por la Asamblea General de ECMA en Junio de 1997.

Dicho estándar fue enviado a ISO/IEC JTC 1 para su adopción y aprobado como estándar internacional ISO/IEC 16262, en Abril de 1998. La Asamblea General de ECMA de Junio de 1998, aprobó la segunda edición de ECMA-262 para mantenerla totalmente en consonancia con el ISO/IEC 16262. Los cambios producidos entre la primera y la segunda versión, son de carácter meramente editorial“.
3
Microsoft, que desde hace un par de años parece mostrar una voluntad decididamente más cercana a la adopción de estándares, proclama que la versión de Javascript incluida en sus navegadores (especialmente a partir de la versión 5.x), cumple rigurosamente con dicho estándar e incluso sugiere utilizar el atributo language = “ECMAScript” al construir páginas de cliente.