En esta sección, aprenderás los fundamentos de la sintaxis de JavaScript y algunos conceptos básicos que son esenciales para escribir y entender código en este lenguaje. Vamos a cubrir los siguientes temas:
- Comentarios
- Declaraciones
- Identificadores
- Tipos de Datos Básicos
- Operadores Básicos
- Estructura de un Programa JavaScript
- Comentarios
Los comentarios son líneas de texto que no se ejecutan como código. Se utilizan para explicar el código y hacer que sea más fácil de entender. En JavaScript, hay dos tipos de comentarios:
- Comentarios de una sola línea: Se inician con
//
.
- Comentarios de múltiples líneas: Se encierran entre
/*
y*/
.
- Declaraciones
Una declaración es una instrucción que realiza una acción. Las declaraciones en JavaScript generalmente terminan con un punto y coma ;
, aunque no es obligatorio, es una buena práctica para evitar errores.
- Identificadores
Los identificadores son nombres que se utilizan para identificar variables, funciones y otros elementos en el código. Las reglas para los identificadores son:
- Deben comenzar con una letra, un guion bajo
_
o un signo de dólar$
. - Pueden contener letras, números, guiones bajos y signos de dólar.
- Son sensibles a mayúsculas y minúsculas (
myVariable
ymyvariable
son diferentes).
- Tipos de Datos Básicos
JavaScript tiene varios tipos de datos básicos:
- Números: Representan valores numéricos.
- Cadenas de texto (Strings): Representan texto y se encierran entre comillas simples
'
, comillas dobles"
o backticks`
.
- Booleanos: Representan valores de verdad (
true
ofalse
).
- Nulos (Null): Representan la ausencia intencional de un valor.
- Indefinidos (Undefined): Representan una variable que ha sido declarada pero no inicializada.
- Símbolos (Symbols): Representan valores únicos e inmutables.
- Operadores Básicos
Los operadores se utilizan para realizar operaciones sobre variables y valores. Algunos operadores básicos incluyen:
- Asignación:
=
- Aritméticos:
+
,-
,*
,/
,%
let sum = 10 + 5; // 15 let difference = 10 - 5; // 5 let product = 10 * 5; // 50 let quotient = 10 / 5; // 2 let remainder = 10 % 3; // 1
- Comparación:
==
,===
,!=
,!==
,>
,<
,>=
,<=
let isEqual = (10 == '10'); // true let isStrictEqual = (10 === '10'); // false let isNotEqual = (10 != '10'); // false let isStrictNotEqual = (10 !== '10'); // true let isGreater = (10 > 5); // true let isLess = (10 < 5); // false let isGreaterOrEqual = (10 >= 10); // true let isLessOrEqual = (10 <= 5); // false
- Lógicos:
&&
,||
,!
let andOperator = (true && false); // false let orOperator = (true || false); // true let notOperator = (!true); // false
- Estructura de un Programa JavaScript
Un programa en JavaScript puede estar compuesto por múltiples declaraciones y expresiones. Aquí hay un ejemplo simple que combina varios de los conceptos mencionados:
// Declaración de variables let name = "Alice"; let age = 30; let isStudent = true; // Uso de operadores aritméticos let nextYearAge = age + 1; // Uso de operadores de comparación let isAdult = age >= 18; // Uso de operadores lógicos let canEnroll = isAdult && isStudent; // Salida de datos console.log(`Name: ${name}`); console.log(`Age: ${age}`); console.log(`Is student: ${isStudent}`); console.log(`Next year age: ${nextYearAge}`); console.log(`Is adult: ${isAdult}`); console.log(`Can enroll: ${canEnroll}`);
Ejercicio Práctico
Ejercicio 1:
Escribe un programa en JavaScript que declare las siguientes variables y realice las operaciones indicadas:
- Declara una variable
a
con el valor10
y una variableb
con el valor20
. - Calcula la suma de
a
yb
y almacénala en una variablesum
. - Calcula la diferencia entre
a
yb
y almacénala en una variabledifference
. - Calcula el producto de
a
yb
y almacénalo en una variableproduct
. - Calcula el cociente de
a
yb
y almacénalo en una variablequotient
. - Imprime los resultados en la consola.
Solución:
// Declaración de variables let a = 10; let b = 20; // Operaciones aritméticas let sum = a + b; let difference = a - b; let product = a * b; let quotient = a / b; // Salida de datos console.log(`Sum: ${sum}`); // Sum: 30 console.log(`Difference: ${difference}`); // Difference: -10 console.log(`Product: ${product}`); // Product: 200 console.log(`Quotient: ${quotient}`); // Quotient: 0.5
Conclusión
En esta sección, hemos cubierto los conceptos básicos de la sintaxis de JavaScript, incluyendo comentarios, declaraciones, identificadores, tipos de datos básicos y operadores. También hemos visto cómo estructurar un programa simple en JavaScript. Estos fundamentos son esenciales para avanzar en el aprendizaje de JavaScript y te preparan para los temas más avanzados que vendrán en los siguientes módulos.
JavaScript: De Principiante a Avanzado
Módulo 1: Introducción a JavaScript
- ¿Qué es JavaScript?
- Configuración de tu Entorno de Desarrollo
- Tu Primer Programa en JavaScript
- Sintaxis y Conceptos Básicos de JavaScript
- Variables y Tipos de Datos
- Operadores Básicos
Módulo 2: Estructuras de Control
- Sentencias Condicionales
- Bucles: for, while, do-while
- Sentencias Switch
- Manejo de Errores con try-catch
Módulo 3: Funciones
- Definición y Llamada de Funciones
- Expresiones de Función y Funciones Flecha
- Parámetros y Valores de Retorno
- Ámbito y Closures
- Funciones de Orden Superior
Módulo 4: Objetos y Arrays
- Introducción a los Objetos
- Métodos de Objeto y la Palabra Clave 'this'
- Arrays: Conceptos Básicos y Métodos
- Iteración sobre Arrays
- Desestructuración de Arrays
Módulo 5: Objetos y Funciones Avanzadas
- Prototipos y Herencia
- Clases y Programación Orientada a Objetos
- Módulos e Importación/Exportación
- JavaScript Asíncrono: Callbacks
- Promesas y Async/Await
Módulo 6: El Modelo de Objetos del Documento (DOM)
- Introducción al DOM
- Selección y Manipulación de Elementos del DOM
- Manejo de Eventos
- Creación y Eliminación de Elementos del DOM
- Manejo y Validación de Formularios
Módulo 7: APIs del Navegador y Temas Avanzados
- Almacenamiento Local y de Sesión
- Fetch API y AJAX
- WebSockets
- Service Workers y Aplicaciones Web Progresivas (PWAs)
- Introducción a WebAssembly
Módulo 8: Pruebas y Depuración
- Depuración de JavaScript
- Pruebas Unitarias con Jest
- Pruebas de Integración
- Pruebas de Extremo a Extremo con Cypress
Módulo 9: Rendimiento y Optimización
- Optimización del Rendimiento de JavaScript
- Gestión de Memoria
- Manipulación Eficiente del DOM
- Carga Perezosa y División de Código
Módulo 10: Frameworks y Librerías de JavaScript
- Introducción a React
- Gestión de Estado con Redux
- Conceptos Básicos de Vue.js
- Conceptos Básicos de Angular
- Elegir el Framework Adecuado