freeCodeCamp tiene una lección titulada "Usar la asignación de desestructuración para pasar un objeto como parámetro de una función". En esa lección proporcionan el siguiente código:
const profileUpdate = (profileData) => { Const {name, age, nationality, location} = profileData; // will refer to this code block as ALuego continúan afirmando: "Esto desestructura efectivamente el objeto enviado a la función".
Por lo que entiendo, en A) profileUpdate es el identificador de función y profileData es el parámetro de función. En este caso, cualquier argumento que aceptaría la función profileUpdate aparentemente tendría que ser un objeto con los identificadores de propiedad de nombre, edad, nacionalidad y ubicación dados en la segunda línea del código anterior. Después de recibir solo un objeto, profileUpdate crearía respectivamente variables de nombre, edad, nacionalidad y ubicación y les asignaría el valor de, respectivamente, profileData.name, profileData.age, profileData.nationality y profileData.ubicación. Una vez más, creo que esto es correcto, pero si he entendido algo mal, no dude en corregirme. // se referirá a este párrafo como C.
Ahora, freeCodeCamp divide su página web por la mitad. En el lado izquierdo de la página está la lección y en el lado derecho de la página hay un problema para evaluar su comprensión de la lección. En el lado izquierdo de la página nos dieron el siguiente objeto:
const stats = { max: 56.78, standard_deviation: 4.34, median: 35.54, mode: 23.87, min: -0.75, average: 35.85 }; // will refer to this object as BAsí que decidí tomar la estructura general de A y aplicarla a B para verificar que realmente entendí A. Escribí lo siguiente en VScode:
const stats = { max: 56.78, standard_deviation: 4.34, median: 34.54, mode: 23.87, min: -0.75, average: 35.85 }; const statsUpdate = (x) => { const {max} = x; } statsUpdate(stats); console.log(max); console.log(typeof max);esperando que aparezcan los valores de 56.78 y el objeto, pero en su lugar aparece un error de referencia que dice "el máximo no está definido". Claramente no entiendo algo en el párrafo C arriba o no estoy escribiendo las expresiones correctas en el código inmediatamente arriba. ¿Qué estoy haciendo mal? He intentado ver el error pero no soy capaz de verlo en este momento y su ayuda sería muy apreciada.