Anuncios

Bienvenidos sean a este post, en nuestro post anterior hemos hablado sobre los operadores mas basicos y simples que dispondremos en Javascript pero ahora nos centraremos en otros que son un poco mas complejos pero tambien son de gran utilidad algunos de ellos, comencemos con el primer operador.

Operadores de bits

Anuncios

Cuando nosotros trabajamos con estos lenguajes lo hacemos en un nivel superior pero todos los datos que manipulamos son en un nivel inferior, trabajados como bits (unos y ceros), el lenguaje para representar un valor de tipo entero necesita de 32 bits, un valor de 10 estara representado por esta cantidad de bits:

00000000000000000000000000001010 

En memoria pero si lo escribimos habitualmente sera 1010 eliminando los ceros que son innecesarios para representarlo, esto aplica a todos los datos, sean de tipo numero, cadena, etc. pero lamentablemente Javascript no muestra este tipo de informacion sino el dato relacionado a esta serie de bits, es decir el numero 10, aunque para ello podemos usar los operadores de bits que nos permitiran operar los bits de los operadores informados, veamos la siguiente tabla:

OperadorDescripcion
~opdevuelve el complemento a uno del operando
op1 & op2se realiza una operacion AND entre los dos operandos
op1 | op2se realiza una operacion OR entre los dos operandos
op1 ^ op2realiza una operacion OR-Exclusive entre los dos operandos
op1 << op2rellena el op1 con tantos ceros a la derecha como indica op2
op1 >> op2rellena el op1 con tantos 1 o 0 indicados por el op2, el valor de relleno esta indicado por el valor mas a la izquierda del op1
op1 >>> op2rellena el op1 con tantos 0 por la izquierda como indique op2
Anuncios

Estos operadores son para modificar valores en memoria y en el uso general no lo van a utilizar pero en determinadas circunstancias lo van a necesitar, pasemos a nuestro siguiente operador.

Anuncios

Operadores logicos

Los operadores de tipo logicos son empleados para comparar dos expresiones y esto devuelve un resultado booleano (true o false) y son especialmente utilies para cuando usemos condicionales, veamos los tres operadores disponibles:

OperadorDescripcion
exp1 && exp2Realiza una operacion AND y devuelve true si ambas exp son iguales
exp1 || exp2Realiza una operacion OR y devuelve true si algunas de las exp es true
!expInvierte la expresion, es decir devuelve false si es true y viceversa
Anuncios

Por ejemplo si nosotros tuvieramos las siguientes expresiones:

exp1 = 1;
exp2 = 0;

A estas dos expresiones le aplicaremos los distintos operadores y observemos cual es el resultado que nos devolvera:

exp1 && exp2   // Devuelve un estado false
exp1 || exp2 // Devuelve un estado true
!exp1 // Devuelve un estado false

Como pueden ver estas expresiones solo devolveran ese tipo de resultado pero mas adelante veremos cual es su verdadera utilizacion, pasemos al siguiente operador.

Anuncios

Operador typeof

Este operador devuelve el tipo de variable que le enviemos, el tipo de salida es cadena (string), es ideal para saber cual es el tipo de variable que estamos utilizando y es bueno para saber si nuestra variable fue creada correctamente, pasemos al siguiente operador.

Anuncios

Operadores condicionales

Las expresiones condicionales son una version reducida del condicional if…else, un tema que veremos mas adelante, el cual es muy practico para ante un cierto resultado poder modificar un valor o en caso contrario por otro valor, su sintaxis es la siguiente:

expresion ? sentencia : sentencia;

x == 20 ? texto="X vale 20" : texto="X no vale 20";
Anuncios

Nuestra sintaxis sera primero la expresion donde actuara como condicional, en el ejemplo decimos que x es igual a 20, despues del signo de interrogacion (?) ira la sentencia en caso de ser verdadera, es decir si x vale 20 le asignaremos ese mensaje a texto, y los dos puntos (:) son la sentencia en caso de ser falso, y le daremos otro mensaje para diferenciarlos, para entenderlo un poco mejor veamos el siguiente ejemplo:

<html>
<head><title>Mas sobre Operadores</title></head>
<script language = "javascript">
<!--
function OperadorBits()
{
	document.write("<h4>Operadores de bits:</h4>");
	document.write("Operador AND: 1 & 0 -> " + (1 & 0) + "<br>");
	document.write("Operador AND: 1 & 1 -> " + (1 & 1) + "<br>");
	document.write("Operador OR: 1 | 0 -> " + (1 | 0) + "<br>");
	document.write("Operador OR: 1 | 1 -> " + (1 | 1) + "<br>");
	document.write("Operador XOR: 1 ^ 0 -> " + (1 ^ 0) + "<br>");
	document.write("Operador XOR: 1 ^ 1 -> " + (1 ^ 1) + "<br>");
	document.write("Operador NEGADOR: !1 -> " + (!1) + "<br>");
}
function OperadorTypeOf()
{
	document.write("<h4>Operador typeof</h4>");
	document.write("typeof 221076 -> " + (typeof 221076) + "<br>");
	document.write("typeof 'tinchicus' -> " + (typeof 'tinchicus') + "<br>");
	document.write("typeof window -> " + (typeof window) + "<br>");
	document.write("typeof mi_var -> " + (typeof mi_var) + "<br>");
}

//-->
</script>
<body>
<script language="javascript">
<!--	
	OperadorBits();
	OperadorTypeOf();
	var x = prompt("Ingresa un valor",20);
	x == 20 ? texto = "X vale 20" : texto = "X no vale 20";
	document.write("<h4>Operador condicional:</h4>");
	document.write(texto);
//-->
</script>
</body>
</html>
Anuncios

En este caso vamos a poner en practica los operadores visto en este post, para ello haremos dos funciones, en la primera usaremos los operadores de bits, donde describiremos el tipo de operador y los operandos, luego mostrara el resultado de la operacion, nuestro siguiente funcion sera para el operador typeof, donde pasaremos varios tipos de elementos , primero uno de tipo numero, otro de cadena, otro de objeto y por ultimo una variable vacia, esto es nuestro primer tag de javascript, en el cuerpo del documento usaremos otro tag de Javascript donde nuestras primeras lineas llamara a las funciones creadas en el otro tag, observen como es tan simple llamarlas, luego preguntaremos por un dato por medio de un prompt, para luego pasar a un condicional, vean como primero verifica si el valor ingresado es igual a 20 en caso de ser verdadero setea el primer mensaje a texto y en caso de ser falso seteara a texto con otro mensaje, para finalmente mostrar el mensaje asignado a texto, grabemos y veamos como queda finalmente

Anuncios

Observen los resultados de los operadores de bits, y especialmente el de typeof donde nos trae el tipo de elemento, por ultimo el mensaje asignado a texto, por ultimo veamos como varia nuestro condicional

Como pueden ver el condicional funciona perfectamente variando en base al valor ingresado en el prompt.

Anuncios

En resumen, hoy vimos los operadores que nos faltaban, hemos visto operadores para manejar los datos a nivel bits, hemos visto los operadores logicos (los cuales seran mas utiles adelante), el operador typeof donde nos devolvera el tipo de dato que le informemos, por ultimo un gran operador como es el condicional, un ejemplo practico donde lo aplicamos, tambien hemos visto un poco de funciones que veremos mas adelante, espero les haya sido util sigueme en tumblr, Twitter o Facebook para recibir una notificacion cada vez que subo un nuevo post en este blog, nos vemos en el proximo post.

Anuncios

Tengo un Patreon donde podes acceder de manera exclusiva a material para este blog antes de ser publicado, sigue los pasos del link para saber como.

Tambien podes donar

Es para mantenimiento del sitio, gracias!

$1.50

Anuncio publicitario