Por 9.99€ al mes tendrás acceso completo a todos los cursos. Sin matrícula ni permanencia.
Operadores lógicos o booleanos
console.log('Mayor: ', 7>2);
console.log('Menor: ', 7<2);
console.log('Mayor o igual: ', 7>=2);
console.log('Menor o igual: ', 7<=2);
console.log('Igual: ', 7==2);
console.log('Distinto: ', 7!=2);
Diferencia entre == y ===
El triple igual significa “son iguales sin conversión de tipos”.
- 1==’1′ // true, conversión automática del tipo de datos
- 1===’1′ // false, ya que son datos de diferente tipo
- 0==false // true
- 0===false // false, ya que son datos de diferente tipo
Condicional if
<script>
const dato1 = 5;
const dato2 = 3;
if(dato1 > dato2){
console.log('dato1 es mayor que dato2');
}
</script>
Ejercicio: operador booleano
Modificar SÓLO EL OPERADOR BOOLEANO para lograr que se imprima el mensaje.
else if
<script>
const dato1 = 5;
const dato2 = 10;
if (dato1 > dato2) {
console.log('dato1 es mayor que dato2');
} else if (dato1 < dato2) {
console.log('dato1 es menor que dato 2');
}
</script>
else
<script>
const dato1 = 3;
const dato2 = 5;
if(dato1 > dato2){
console.log("dato1 es mayor que dato2");
}else if(dato1==dato2){
console.log('dato1 es igual que dato2');
} else{
console.log('Va a ser que no...');
}
</script>
Ejercicios: if
1. Corrige los errores que hay en este código:
<script>
if {10 == 10}(
console.log('You got a true!')
) else (
console.log('You got a false!')
)
<script type="text/javascript">
2. Dada una constante que contiene la nota de un examen que va de 0 a 10…
- Si es mayor que cinco mostrar el texto «Aprobado».
- Si es igual a cinco, mostrar el texto «Aprobado por los pelos»
- Si es menor que cinco, mostrar el texto «Suspenso».
3. Declara una constante ‘i’ de tipo entero y asígnale un valor. Mostrar un mensaje indicando si el valor de ‘i’ es positivo o negativo, si es par o impar, si es múltiplo de 5, si es múltiplo de 10 y si es mayor o menor que 100. Consideraremos el 0 como positivo.
4. Hacer una calculadora que determine la operación a realizar por medio de una estructura de control if.
La calculadora utilizará 3 constantes para hacer los cálculos.
- Una constante que almacenará el primer número. Por ejemplo:
const n1 = 3;
- Una constante que almacenará el segundo número. Por ejemplo:
const n2 = 7;
- Una constante de tipo texto que almacenará la operación a realizar. Esta constante podrá valer +, -, * o /, en función de la operación que deseamos realizar. Por ejemplo:
const op = '+';
Utilizaremos la estructura de control if para evaluar la constante que almacena la operación a realizar y en función de esa evaluación, hacer una suma, una resta, una multiplicación o una división.
Operador ternario
const a = 5;
const b = 3;
if(a>b){console.log('a es mayor que b');}
else{console.log('b es mayor que a');}
console.log(a>b ? 'a es mayor que b' : 'b es mayor que a');
Ejercicios operador ternario
1. Declare una constante numérica ‘b’ y asignale un valor. Mostrar una traza indicando si el valor de ‘b’ es positivo o negativo. Consideraremos el 0 como positivo. Utiliza el operador condicional (? : ) dentro del console.log para resolverlo.
2. Declarar una constante numérica ‘i’ y asignale un valor. Muestra un mensaje indicando si ‘i’ es par o impar. Utiliza el operador condicional ( ? : ) dentro del console.log para resolverlo.
Estructura switch
let opcion = 'opcion1';
switch(opcion) {
case 'opcion1':
console.log('Has escogido la opción 1');
break;
case 'opcion2':
console.log('Has escogido la opción 2');
break;
case 'opcion3':
console.log('Has escogido la opción 3');
break;
default:
console.log('No has escogido ninguna de las opciones posibles');
}
Ejercicios Switch
1. Switch modificando el case
Inserta el código necesario para que esta estructura de control Switch funcione también con el amarillo.
const color = 'amarillo';
switch(color) {
case 'rojo':
console.log('Has escogido rojo');
break;
case 'azul':
console.log('Has escogido azul');
break;
//Inserta tu código aquí
default:
console.log('No has escogido ningún color de la lista!');
}
2. Switch modificando el default
Añadir el caso por defecto (default):
let golosina = 'nubes';
switch(golosina) {
case 'chicle':
console.log('Has escogido un chicle');
break;
case 'gominola':
console.log('Has escogido una gominola');
break;
case 'regaliz':
console.log('Has escogido un regaliz');
break;
//Inserta tu código aquí
}
Operador bitwise
Una operación bit a bit (o Bitwise) opera sobre números binarios a nivel de bits individuales. Es una acción primitiva sustancialmente más rápida que las que se llevan a cabo sobre el valor real de los operandos.
Operador & (AND)
Devuelve 1 si ambos operandos son 1.
const t = true;
const f = false;
console.log('t & f: ', t & f); // 0
console.log('t && f: ', t && f); // false
Valor A | Valor B | A AND B |
---|---|---|
0 | 0 | 0 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 1 |
Operador | (OR)
Devuelve 1 donde uno o ambos operandos son 1.
console.log('t | f: ', t | f); // 1
console.log('t || f: ', t || f); // true
Valor A | Valor B | A OR B |
---|---|---|
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 1 |
Operador ^ (XOR)
Devuelve 1 donde un operando, pero no ambos son es 1
console.log('t ^ f: ', t ^ f);
Valor A | Valor B | A XOR B |
---|---|---|
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 |
Operador ∼ (NOT)
Invierte el valor del operando.
console.log('~t: ', ~t);
Valor A | NOT A |
---|---|
0 | 1 |
1 | 0 |
Ejemplo:
const a = 5; // 00000000000000000000000000000101
const b = -3; // 11111111111111111111111111111101
console.log(~a); // 11111111111111111111111111111010 → En notación decimal: -6
console.log(~b); // 00000000000000000000000000000010 → En notación decimal: 2
Operador de desplazamiento
Desplazamiento a la izquierda
00011100 << 1 = 00111000
00011100 << 2 = 01110000
Desplazamiento a la derecha
00011100 >> 1 = 00001110
00011100 >> 2 = 00000111