ES6 - Utiliza sintaxis de desestructuración para pasar un objeto como parámetro de función

No logre entender la explicacion ,

const profileUpdate = (profileData) => {
  const { name, age, nationality, location } = profileData;

}

Esto desestructura efectivamente el objeto enviado a la función. Esto también se puede hacer en el lugar:

const profileUpdate = ({ name, age, nationality, location }) => {

}

In the first example, an object is being passed into the function using the profileData name. Then inside the function you are getting the values for the name, age, nationality, location properties in the object using destructuring.

const { name, age, nationality, location } = profileData;

This is just a shortcut for:

const name = profileData.name;
const age = profileData.age;
const nationality = profileData.nationality;
const location = profileData.location;

Pretty good shortcut, huh? Saves a lot of typing. But you can make that shortcut even shorter by doing the destructuring in the function argument itself.

const profileUpdate = ({ name, age, nationality, location }) => {

You know that the value being passed in is an object. So instead of giving the object a name and destructuring it inside of the function, you can just destructure it right there in the parameter list. An even shorter shortcut.