隆Te damos la bienvenida a este reto!

1

隆Bienvenido al mundo de JavaScript!

D铆a 1

2

Variables, funciones y sintaxis b谩sica

3

Tipos de datos

4

Playground - Retorna el tipo

5

Tipos de datos - pt 2

D铆a 2

6

Operadores

7

Hoisting y coerci贸n

8

Playground - Calcula la propina

9

Alcance de las variables

D铆a 3

10

Condicionales

11

Playground - Calcula a帽os bisiestos

12

Switch

13

Playground - Obten informaci贸n de mascotas seg煤n su tipo

14

Ciclos

15

Playground - Dibuja un triangulo

D铆a 4

16

Arrays

17

Playground - Encuentra al michi mas famoso

18

Objetos

19

Playground - Obten el promedio de los estudiantes

D铆a 5 - Checkpoint

20

Playground - encuentra el palindromo m谩s grande

D铆a 6

21

Reasignaci贸n y redeclaraci贸n

22

Modo estricto

D铆a 7

23

Debugging y manejo de errores

24

Programaci贸n funcional

Quiz: D铆a 7

D铆a 8

25

Closures

26

Playground - Crea una calculadora con closures

27

Higher order functions

28

Playground - Crea tu propio m茅todo map

D铆a 9

29

ECMAScript

30

TC39

Quiz: D铆a 9

D铆a 10 - Checkpoint

31

ES6

32

ES7

33

Playground - Task planner

D铆a 11

34

Asincronismo

35

Playground - Promesas

36

Manejando el asincronismo

37

Playground - Resuelve el callback hell usando promesas

38

Playground - Resuelve el callback hell usando async/await

D铆a 12

39

Arrays a profundidad

40

M茅todos de arrays: Every, Find y findIndex

41

Playground - V谩lida el formulario

D铆a 13

42

M茅todos de arrays: Includes, Join y concat

43

Playground - agrupa los productos

44

M茅todos de arrays: Flat y FlatMap

45

Playground - Encuentra la ubicaci贸n del valor buscado

D铆a 14

46

Mutable functions

47

Playground - Modifica una lista de compras

48

M茅todos de arrays: sort

49

Playground - Ordena los productos

D铆a 15 - Checkpoint

50

Playground - Sistema de reservaciones de un hotel

D铆a 16

51

Programaci贸n orientada a objetos en JavaScript

52

Objetos literales

53

Playground - Congela el objeto recursivamente

D铆a 17

54

Prototipos en JavaScript

55

Playground - Modifica el prototype de los arrays

56

Playground - Crea un auto usando clases

D铆a 18

57

Abstracci贸n en JavaScript

58

Playground - Sistema de carrito de compras

59

Encapsulamiento en JavaScript

60

Playground - Encapsula datos de los usuarios

D铆a 19

61

Herencia en JavaScript

62

Playground - Jerarqu铆a de animales

63

Polimorfismo en JavaScript

64

Playground - Sistema de pagos

D铆a 20 - Checkpoint

65

Playground - Agenda de vuelos

D铆a 21

66

Patrones de dise帽o

67

Sinlgeton y Factory pattern en JavaScript

68

Playground - Implementa singleton en un chat

D铆a 22

69

Adapter y Decorator pattern en JavaScript

70

Playground - Personaliza productos de una tienda

71

Builder y Protype pattern en JavaScript

72

Playground - Mejora el c贸digo usando builder pattern

D铆a 23

73

Facade y proxy pattern en JavaScript

74

Playground - Proxy en servicio de mensajer铆a

75

Chain of responsability y Observer pattern en JavaScript

76

Playground - Implementaci贸n de Observador en Newsletter

D铆a 24 - Checkpoint

77

Playground - Crea un task manager con patrones de dise帽o

D铆a 25

78

Estructuras de datos en JavaScript

79

Playground - Crea tu propia implementaci贸n de un array

80

Hash tables en JavaScript

81

Playground - Implementaci贸n de una HashTable para Contactos

D铆a 26

82

Set en JavaScript

83

Playground - Remueve duplicados de una lista

84

Maps en JavaScript

85

Playground - Crea un organizador de tareas

D铆a 27

86

Singly Linked List en JavaScript

87

Playground - Agrega m茅todos a la singly linked list

88

Playground - Implementaci贸n de una singly linked list

D铆a 28

89

Stacks en JavaScript

90

Playground - Crea un stack para una playlist

D铆a 29

91

Queues en JavaScript

92

Playground - Crea una cola de emails

D铆a 30

93

隆Lo lograste!

Live Class

94

30 d铆as de JS con Juan DC

95

30 d铆as de JS con Nicobytes

96

30 d铆as de JS con GNDX

97

30 d铆as de JS con LeoCode

98

30 d铆as de JS con Teffcode

99

Sesi贸n: Cierre de los 30 d铆as de JavaScript

Operadores

6/99

Lectura

Los operadores son elementos de lenguaje que nos permiten realizar c谩lculos y comparaciones en JavaScript. Aqu铆 hay una lista de los operadores m谩s comunes:

...

Reg铆strate o inicia sesi贸n para leer el resto del contenido.

Aportes 9

Preguntas 2

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad?

Aqu铆 te dejo algunos datos curiosos sobre los operadores en JavaScript:


.

  • JavaScript tiene varios tipos de operadores, incluyendo aritm茅ticos, de comparaci贸n, l贸gicos y de asignaci贸n.
    .
  • El operador 鈥+鈥 no solo se usa para sumar n煤meros, sino tambi茅n para concatenar strings. Por ejemplo, "Hola" + "Mundo" devuelve "HolaMundo".
    .
  • El operador de igualdad == en JavaScript compara los valores de dos variables, no los tipos de datos. Por lo tanto, "1" == 1 es true en JavaScript.
    .
  • Si quieres comparar los valores y los tipos de dos variables, debes usar el operador de igualdad estricta ===. Por ejemplo, "1" === 1 es false en JavaScript.
    .
  • El *operador ternario ? es un atajo para escribir una sentencia if-else en una sola l铆nea. Por ejemplo, la siguiente l铆nea de c贸digo asignar谩 el valor de "Hombre" o "Mujer" a la variable gender en funci贸n del valor de la variable isMale:
    var gender = isMale ? "Hombre" : "Mujer";
    .
  • JavaScript tambi茅n tiene operadores de bits, que se utilizan para realizar operaciones de bits a nivel de bits individuales en n煤meros enteros. Estos operadores incluyen AND (&), OR (|), XOR (^) y NOT (~).
    .
  • JavaScript tambi茅n tiene operadores de incremento ++ y decremento --, que se utilizan para aumentar o disminuir el valor de una variable en 1. Estos operadores pueden colocarse antes o despu茅s de la variable y tienen diferentes efectos en el valor de la variable y la expresi贸n en la que se utilizan.

En el ejemplo del operador OR, si dejamos 10 a帽os de edad y que efectivamente tiene identificaci贸n, el ni帽o SI podr铆a entrar al bar hahahaha 馃槺

Lo mejor ser铆a no tener esta validaci贸n en una p谩gina o plataforma real 馃ぃ

creo que hay un error en el ejemplo de -= ya que el retorno de la consola es 7 no 12

let x = 10;
x -= 3; // x = x - 3 =10-3
console.log(x); // 7

igual en el segundo ejemplo

let x = 10;
x *= 2; // x = x * 2 = 10 * 2
console.log(x); // 20

y tercero

x /= 4; // x = x / 4 =10 /4=5
console.log(x); // 5

El AND(&&) tambi茅n se puede usar para ejecutar una expresi贸n si la evaluaci贸n retorna true, por ejemplo:

true && console.log(鈥淓jecute console.log鈥)
2==2 && console.log(鈥淓s true!鈥);

6/80 Operadores

Operadores Aritmeticos

Se usan para realizar operaciones matem谩麓ticas b谩sicas como la suma, resta, la multiplicaci贸n, la divisi贸n y el m贸dulo.

Suma:

let a = 5;
let b = 7;
let suma = a + b;
console.log(suma); // 12

Resta:

let a = 10;
let b = 4;
let resta = a - b;
console.log(resta); // 6

Multiplicaci贸n:

let a = 3;
let b = 5;
let multiplicacion = a * b;
console.log(multiplicacion); // 15

Divisi贸n:

let a = 10;
let b = 2;
let division = a / b;
console.log(division); // 5

M贸dulo:

let a = 11;
let b = 3;
let resto = a % b;
console.log(resto); // 2

Operadores Asignaci贸n

Permiten asignar valores a variables de manera m谩s compacta y eficiente. Estos operadores se combinan con los operadores aritmeticos. Para realizar una operaci贸n y asignar el resultado a la variable.

Operador de asignaci贸n b谩sico =

el operador de asiganci贸n b谩sico se utiliza para asignar un valor a una variable

let a = 5;
console.log(a); // 5

Operador de asignaci贸n de suma +=

El operador de asignaci贸n de suma se utiliza para sumar un valor a una variable y asignar el resultado a la misma variable.

let a = 10;
a += 5;
console.log(a); // 15

Operador de asiganci贸n de resta -=

El operador de asignaci贸n de resta se utiliza para restar un valor a una varaible y asignar el resultado a la misma variable.

let a = 20;
a -= 7;
console.log(a); // 13

*Operador de asiganci贸n de multiplicaci贸n =

El operador de asignaci贸n de multiplicaci贸n se utiliza para multiplicar un valor a una variable y asignar el resutlado a la misma variable.

let a = 3;
a *= 4;
console.log(a); // 12

Operador de asignaci贸n de divisi贸n /=

El operador de asiganci贸n de divisi贸n se utiliza para dividir un valor a una variable y asignar el resultado a la misma variable.

let a = 24;
a /= 3;
console.log(a); // 8

Operadores de Comparaci贸n

Nos permiten comparar valores y obtener un resultado booleano true or false segun el resultado de la comparaci贸n

Operador de menor que <

El operador de menor que se utiliza para comprar si el valor de la izquierda es menor que el valor de la derecha

console.log(5 < 10); // true

Operador de mayor que >

El operador de mayor que se utiliza para comparar su el valor de la izquierda es mayor que el valor de la derecha

console.log(10 > 5); // true

Operador menor o igual que 鈮

El operador menor o igual que se utiliza para comparar si el valor de la izquierda es menor o igual que el valor de la derecha

console.log(5 <= 5); // true

Operador mayor o igual que 鈮

El operador mayor o igual que se utiliza para comparar si el valor de la izquierda es mayor o igual que el valor de la derecha.

console.log(10 >= 10); // true

Operador de no igual que 鈮=

EL operador de no igual que se utiliza para comparar si el valor de la izquierda es diferente al valor de la derecha, tanto en valor como en tipo de dato.

console.log(1 !== "1"); // true

Operador de igualdad == y ===

El primero solo compara el valor, y el segundo adem谩s de comparar el valor tambien verifica el tipo de dato. Se recomienda usar m谩s el === para evitar resultados inesperados.

Operadores l贸gicos

Los operadores l贸gicos son utilizados para realizar operaciones l贸gicas en JavaScript.

El operador && AND, devuelve TRUE si ambas expresiones son verdaderas.

let edad = 25;
let mayorDeEdad = edad >= 18;

if (edad >= 18 && mayorDeEdad) {
  console.log("Eres mayor de edad");
} else {
  console.log("A煤n eres menor de edad");
}

El operador || OR, devuelve TRUE si al menos una de las expresiones es verdadera.

let edad = 25;
let tieneIdentificacion = true;

if (edad >= 18 || tieneIdentificacion) {
  console.log("Puedes entrar al bar");
} else {
  console.log("No tienes la edad o la identificaci贸n suficiente para entrar al bar");
}

El operador ! NOT, invierte el valor de una expresi贸n

let esFinDeSemana = true;

if (!esFinDeSemana) {
  console.log("A trabajar");
} else {
  console.log("A disfrutar del fin de semana");
}

//AND(&&)
let e_dad = 25;
let mayorDeEdad = e_dad >= 18;

if (e_dad >= 18 && mayorDeEdad) {
console.log(鈥淓res mayor de edad鈥);
} else {
console.log(鈥淎煤n no eres mayor de edad鈥);
}

// OR(||)
let e_Dad = 25;
let tieneIdentificacion = true;

if (e_Dad >= 18 || tieneIdentificacion) {
console.log(鈥淧uedes entrar al bar鈥);
} else {
console.log(鈥淣o tienes la edad o la identificaci贸n suficiente para entrar al bar鈥);
}

//NOT(!)
let esFinDeSemana = true;

if (!esFinDeSemana) {
console.log(鈥淎 trabajar鈥);
} else {
console.log(鈥淎 disfrutar del fin de semana鈥);
}

Para que se entienda los operadores l贸gicos, aqu铆 dejo las tablas de verdad en las que se basan鈥onjunci贸n y disyunci贸n.

let x = 10;

x -= 3; // x = x - 3
console.log(x); // 12

La respuesta deber铆a ser 7 y no un valor acumulativo por la operaci贸n anterior

Misma solucion pero en una funcion y usando un operador ternario.

let edad = 25;
let mayorDeEdad = edad >= 18;

function esMayorDeEdad (edad, mayorDeEdad) {
	return edad >= 18 && mayorDeEdad ? "Eres mayor de edad" : "A煤n eres menor de edad";
}
 
console.log( esMayorDeEdad(edad, mayorDeEdad) );

Para mas informacion: https://developer.mozilla.org/es/docs/Web/JavaScript/Reference/Operators/Conditional_Operator