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.