preloader

Claro, aquí tienes una versión modificada del texto sobre objetos en JavaScript:

Introducción a los Objetos

En el capítulo anterior exploramos los tipos de datos en JavaScript, donde distinguimos entre tipos primitivos y objetos. Mientras que los tipos primitivos contienen un único valor (como una cadena o un número), los objetos permiten almacenar colecciones de datos y entidades más complejas identificadas por claves.

Creación de Objetos

Para crear un objeto, utilizamos la sintaxis de llaves {...} con una lista opcional de propiedades. Cada propiedad es un par «clave

«, donde la clave es un identificador único y el valor puede ser cualquier tipo de dato.

Podemos visualizar un objeto como un archivador con compartimentos etiquetados. Cada dato se guarda en un compartimento identificado por su clave, lo que facilita su acceso y gestión.

Podemos inicializar un objeto vacío de dos maneras:

				
					let usuario = new Object(); // sintaxis del "constructor de objetos"
let usuario = {}; // sintaxis del "objeto literal"

				
			

Generalmente preferimos la sintaxis de llaves {...} por su claridad y simplicidad.

Propiedades y Métodos

Dentro de las llaves {...}, podemos definir propiedades de manera directa:

				
					let usuario = {
  nombre: "Juan", // La clave "nombre" almacena el valor "Juan"
  edad: 30       // La clave "edad" almacena el valor 30
};

				
			

Cada propiedad en el objeto tiene una clave única y un valor correspondiente. Por ejemplo, en el objeto usuario, «nombre» tiene el valor «Juan» y «edad» tiene el valor 30.

Acceso a Propiedades

Podemos acceder a los valores de las propiedades utilizando la notación de punto:

				
					alert(usuario.nombre); // Juan
alert(usuario.edad);   // 30

				
			

Para agregar una nueva propiedad o modificar una existente, simplemente asignamos un nuevo valor:

				
					usuario.esAdmin = true;

				
			

Para eliminar una propiedad, usamos el operador delete:

				
					delete usuario.edad;

				
			

Propiedades con Nombres Complejos

Las claves pueden ser cadenas simples o compuestas. Si usamos una clave compuesta, como «le gusta los pájaros», debemos encerrarla entre comillas:

				
					let usuario = {
  nombre: "Juan",
  edad: 30,
  "le gusta los pájaros": true // Clave compuesta entre comillas
};

				
			

Notación de Corchetes

Para acceder a propiedades con claves complejas o calculadas, usamos la notación de corchetes:

				
					let usuario = {};

usuario["le gusta los pájaros"] = true;
alert(usuario["le gusta los pájaros"]); // true

delete usuario["le gusta los pájaros"];

				
			

Esto nos da flexibilidad para manejar claves dinámicas o con espacios.

Propiedades Calculadas

Podemos usar la notación de corchetes al crear un objeto literal para definir propiedades calculadas:

				
					let fruta = prompt("¿Qué fruta comprar?", "Manzana");

let bolsa = {
  [fruta]: 5 // La clave de la propiedad se obtiene de la variable fruta
};

alert(bolsa.manzana); // 5 si fruta es "Manzana"

				
			

Atajos de Propiedad

En la práctica, a menudo usamos variables existentes como valores de propiedades. JavaScript proporciona un atajo para definir propiedades con el mismo nombre que las variables:

				
					function crearUsuario(nombre, edad) {
  return {
    nombre, // Equivalente a nombre: nombre
    edad    // Equivalente a edad: edad
  };
}

let usuario = crearUsuario("Juan", 30);
alert(usuario.nombre); // Juan
				
			

Restricciones de Nombres de Propiedad

A diferencia de las variables, no hay restricciones en los nombres de las propiedades de un objeto. Podemos usar palabras reservadas del lenguaje como nombres de propiedad sin problemas:

				
					let obj = {
  for: 1,
  let: 2,
  return: 3
};

alert(obj.for + obj.let + obj.return); // 6

				
			

Conclusiones

Los objetos en JavaScript son estructuras poderosas que permiten almacenar y manipular datos complejos. Este capítulo ha explorado los fundamentos de los objetos simples, que son la base para tipos más avanzados como arrays y fechas. Continuaremos explorando estos temas en detalle en capítulos posteriores.

Related Post

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *