Objetos y Colecciones

¿Cómo se declara un objeto y cómo se accede a sus propiedades?

Para declarar un objeto en JavaScript, la forma mas común es usar la notacion literal con llaves {}, donde se definen pares de clave-valor; también es posible usar el constructor new Object() o clases. Existen dos metodos principales para acceder a sus propiedades:
Notacion de punto: Se usa cuando la clave es un identificador válido (ej. objeto.propiedad).
Notacion de corchetes: Se usa para claves con espacios, caracteres especiales o variables (ej. objeto["propiedad"] o objeto[variable]).

¿Qué diferencia hay entre una propiedad y un método en un objeto?

Propiedad: Es una asociacion entre un nombre (clave) y un valor que describe una caracteristica del objeto. Este valor puede ser cualquier tipo de dato (números, strings, booleanos, etc.), pero no es una función (ej. persona.nombre almacena el dato "Juan").
Metodo: Es técnicamente una propiedad cuyo valor es una función. Representa una acción que el objeto puede realizar. Para ejecutarla, es necesario llamar la funcion con parentesis () (ej. persona.saludar()) ejecuta la función asociada

Menciona al menos 3 métodos básicos de los arrays (push, pop, map, etc.) y explica cómo funcionan.

El push se utiliza para insertar uno o varios valores en un array en la ultima posicion disponible de este y devuelve la nueva longitud del array.
Con el pop se puede eliminar el ultimo valor que se ingreso en el array y regresa el valor eliminado.
Usando unshift se puede agregar uno o varios valores al incio del array regresando la nueva longitud.