Saltar al contenido

Clase 2 - Introducción a JavaScript

#javascript #curso #array #function

Valores primitivos (tipos)

  • Booleans: true, false

  • Numbers: 5, -15, 2.25

  • Strings: "hola mundo", 'Full Stack', 'a'

  • Symbols: Symbol()

  • Undefined: undefined

  • Null: null

  • Todo lo que no es un primitivo es un object

Verificar el tipo de dato

Para conocer el tipo de dato en JavaScript usamos typeof.

En JavaScript, todo lo que no sea un valor primitivo es un objeto.

typeof "hola mundo" # string
typeof undefined # undefined
typeof 25.6 # number
typeof true # boolean
typeof Symbol() # symbol

Variables en JavaScript: var, let y const

  • var: Usado antes de ES6, pero ya no recomendado.
  • let: Declara variables mutables (pueden cambiar de valor).
  • const: Declara variables inmutables (no pueden reasignarse).

Mostrar en la consola

Para ver datos en la consola utilizamos:

console.log('hola clase');
console.log(typeof 2);
console.log(2);

Template Literals

Nos permiten escribir strings de manera más fácil:

const nombreCurso = 'fs (+) 2025';
const saludo = 'Hola clase, bienvenidos';
console.log(`${saludo} al curso llamado ${nombreCurso} 🎉`);

Valores Falsy, Truthy y Nullish

Falsy

Los valores considerados falsos en JavaScript:

  • false
  • "" (cadena vacía)
  • 0 y -0
  • undefined
  • null
  • NaN

Truthy

Cualquier valor que no sea falsy, por ejemplo:

  • true
  • "Hola mundo" (cadena no vacía)
  • 25 (número distinto de 0 o -0)
  • {} (objeto vacío)
  • [] (array vacío)
  • function() {} (función definida)

Nullish

Solo dos valores:

  • null
  • undefined

Estos valores ayudan a verificar si una variable tiene un valor asignado intencionalmente.


Funciones en JavaScript

Son bloques de código reutilizables. Beneficios:

  • Reutilización de código
  • Modularidad (código más ordenado y mantenible)
  • Abstracción (ocultan detalles de implementación)

Ejemplo de función:

function nombreFuncion(parametro1, parametro2) {
// código a ejecutar
return valor; // puede o no devolver un valor
}
nombreFuncion(1, 2);
function saludar(nombre, edad) {
console.log(`Hola soy ${nombre} y tengo ${edad} años`);
}
saludar('Juancito', 20);

Callback

Una función pasada como argumento a otra función:

function callback() {
// cuerpo de la función
}
function funcionDeOrdenSuperior(parametro1, callback) {
// cuerpo de la función
callback();
}
function operacion(a, b, callback) {
return callback(a, b);
}
function suma(x, y) {
return x + y;
}
console.log(operacion(5, 3, suma)); // 8

Arrow Functions

Forma más corta de escribir funciones:

function saludar(nombre) {
return `Hola soy ${nombre}`;
}
const saludar = (nombre) => {
return `Hola soy ${nombre}`;
};
const saludar = (nombre) => `Hola soy ${nombre}`;
saludar('jaimito');

Arrays

  • Estructura de datos, nos sirve para agrupar datos en una sola variable de manera ordenada
  • Guardo cualquier tipo y cantidad de datos
// index/índice 0 1 2 3 4
const NUMBERS = [1, 5, 33, 10, 5];
// Acceder a los elementos del arreglo
NUMBERS[0]; // 1
NUMBERS[3]; // 10
typeof NUMBERS; // object
const NOMBRES = ['jaimito', 'gabriel', 'juan'];
NOMBRES.push('SANTI'); // ['jaimito', 'gabriel', 'juan', 'SANTI']

Manipulación de elementos

  • push: Agrega un elemento al final.
  • pop: Elimina el último elemento.
  • unshift: Agrega un elemento al inicio.
  • shift: Elimina el primer elemento.

Transformaciones

  • slice: Extrae una porción sin modificar el original.
  • splice: Modifica el array agregando/eliminando elementos.
  • toSpliced: Igual a splice, pero sin modificar el original.

Búsqueda y filtrado

  • indexOf: Encuentra el índice de un elemento.
  • find: Devuelve el primer elemento que cumple una condición.
  • filter: Devuelve un array con los elementos que cumplen una condición.

Iteración y transformación

  • forEach: Ejecuta una función por cada elemento.
  • map: Crea un nuevo array transformando los elementos.

Métodos de Strings

  • split: Divide una cadena en un array.
  • join: Une elementos de un array en una cadena.
  • replace: Reemplaza una parte de la cadena.
  • replaceAll: Reemplaza todas las ocurrencias de una subcadena.