Me estoy confundiendo bastante con este tipo de datos, especialmente con los objetos.
Leí que un tipo de datos es básicamente un atributo para información/datos usados en nuestros programas que le dicen al intérprete qué operaciones se pueden hacer con esa información sin causar errores. Por lo tanto, cada pieza de información tiene un tipo de dato asociado.
JS tiene 7 tipos de datos primitivos y el tipo de datos Objeto.
Ahora, supongamos que escribo:
let person = { name: "John", age: 39, };Cada artículo que encontré en la web dice que la persona es una variable que almacena un objeto.
Eso es lo que me confunde. Lo que pregunto es, ¿no sería más correcto decir que "persona es una variable que se refiere a un valor cuyo tipo de datos es Objeto"?
Estoy seguro de que esto es solo pensar demasiado en el tema, sin embargo, quiero obtener los conceptos básicos correctos de la programación antes de continuar.
Creo que lo estás pensando demasiado por ahora... Sin hablar mucho de escribir, porque hay mucho más que solo Objeto. También sepa que en Javascript, cada valor es un objeto, o casi.
Sin embargo, es bueno averiguarlo, como mencionaste: la persona es una variable que se refiere a un valor.
Esto es importante, eso hace que todo esto sea más obvio:
let person = {name:"John",age:39}; let john = person; john.age++; // Increase john's age by 1. console.log(person.age); // 40Como puede ver, persona y juan se refieren al mismo objeto. Hasta que les pongo otra referencia:
let person = {name:"John",age:39}; let john = person; john.age++; // Increase john's age by 1. console.log(person.age); // 40 person = {name:"Mary",age:34}; console.log(john.name) // JohnAquí, reemplazamos la referencia en persona. Juan sigue siendo el mismo. Ahora ambas variables se han "divergido" entre sí.