Objeto
Un elemento de un programa que agrupa datos (propiedades) y acciones (métodos) relacionados, como un «cliente» con su nombre y su correo.
Un objeto reúne en una sola cosa los datos y las acciones de algo del mundo real o del programa: una cuenta bancaria tiene un saldo (propiedad) y se puede ingresar dinero (método).
En lenguajes como Java, C# o Python los objetos se crean a partir de clases. En JavaScript también se escriben directamente como pares clave–valor entre llaves.
Un ejemplo
{ nombre: "Eva", edad: 28 } es un objeto de JavaScript con dos propiedades; usuario.nombre devuelve "Eva".
Por qué importa
Los objetos permiten modelar cosas reales o conceptos agrupando sus datos y su comportamiento en una sola unidad. Un usuario con nombre, correo y edad, o un pedido con sus líneas y su total, se representan de forma natural como objetos, lo que hace el código más cercano al problema que resuelve.
También son la forma típica de intercambiar información: el formato JSON, que usan casi todas las API web, es básicamente una notación de objetos y listas. Saber leer y construir objetos es indispensable para trabajar con datos en cualquier lenguaje moderno.
Confusiones frecuentes
No hay que confundir objeto con clase. La clase es la plantilla o receta, y el objeto es cada ejemplar concreto creado a partir de ella. En JavaScript la confusión es mayor porque puedes crear objetos directamente con llaves, sin clase alguna. Tampoco se copian como los números: asignar un objeto a otra variable no lo duplica, ambas variables apuntan al mismo objeto, y modificar uno cambia el otro.
Preguntas frecuentes
¿Cómo accedo a una propiedad?
Con punto, usuario.nombre, o con corchetes, usuario["nombre"]. Los corchetes son útiles cuando el nombre está en una variable o contiene caracteres especiales.
¿Qué pasa si pido una propiedad que no existe?
En JavaScript obtienes undefined, y en Python un error KeyError o AttributeError, según uses diccionario u objeto.
Fuentes consultadas
- Object (MDN Web Docs)