Tengo una matriz de datos pero se declaró con const. Estoy bastante confundido para cambiar los datos en la matriz. Aquí está mi matriz:
const person = { name: "Person A", ---> the data I want to change age: 100, favDrinks: [ "coffee", "temulawak", --->> the data I want to change "tea" ], greeting: function() { console.log("Hello World"); --->> the data I want to change } }¿Cómo puedo cambiar los datos de person.name, person.favDrinks[1] y la función de saludo de "Hello World"? ¿Hay alguna manera posible de cambiar los datos constantes? Quiero cambiar a cadenas de texto. Aquí está mi código:
function personName(nama ){ let person.name = nama; person.push("name:" nama ); } console.log(personName("Molly"));Pero todos están equivocados. Por favor, ayúdame. Gracias. :)
Estás haciendo un par de cosas mal.
let dentro de tu función.return person const person = { name: "Person A", age: 100, favDrinks: ["coffee", "temulawak", "tea"], greeting: function () { console.log("Hello World"); }, }; function personName(nama) { person.name = nama; return person; } console.log(personName("Molly"));Esto es lo que obtendrá después de que se hayan realizado los cambios:
{ name: 'Molly', age: 100, favDrinks: [ 'coffee', 'temulawak', 'tea' ], greeting: [Function: greeting] }Está utilizando let para crear una variable con el nombre person.name que no es posible y luego la está insertando en person, en su caso, esto no es lo que debe hacer, en su lugar, simplemente cambie los valores directamente.
function personName(nama) { person.name = name return person } console.log(personName("Molly"));si una variable constante es una cadena o un puente, no se puede cambiar. pero si es una matriz u objeto, no se puede cambiar, pero los elementos del objeto o la matriz se pueden agregar, eliminar o editar.
person es un objeto, no una matriz.Demostración de trabajo:
const person = { name: "Person A", age: 100, favDrinks: [ "coffee", "temulawak", "tea" ], greeting: function() { console.log("Hello World"); } }; person.name = "Person B"; person.favDrinks[1] = "Soft Drinks"; person.greeting = function() { console.log('Hello Guys!'); } console.log('updated object', person);