Déstructurer propriétés de l'objet à partir de propriétés fournies dans un tableau

moctarjallo:

Je dois faire une fonction getPropertiesData(list)qui prend une liste de propriétés et un objet contenant les propriétés et seulement des propriétés de retour de l'objet qui correspondent dans la liste.

Illustration:

function getPropertiesData(['x', 'y']){
    const o = {
        'x': 1, 
        'y': 2, 
        'z': 3
       }

    // Will return 
    return {
        'x': 1,
        'y': 2
       }
    // not including the 'z' variable since it was not specified as input in the list array
}

Comment faire en javascript?

palaѕn:

Vous pouvez utiliser la Object.assign()méthode de cette exigence comme:

function getPropertiesData(arr) {
  const o = { 'x': 1, 'y': 2, 'z': 3 }
  return Object.assign({}, ...arr.map(a => ({[a]: o[a]})));
}

console.log(getPropertiesData(['x', 'y']))

Si vous avez besoin pour obtenir des valeurs pour les seules clés qui existent dans l'objet o, vous pouvez utiliser ceci:

function getPropertiesData(arr) {
  const o = { 'x': 1, 'y': 2, 'z': 3 }
  return Object.assign({}, ...arr.map(a => o.hasOwnProperty(a) ? ({[a]: o[a]}) : null));
}

console.log(getPropertiesData(['x', 'y']))
console.log(getPropertiesData(['w', 'x']))

Je suppose que tu aimes

Origine http://43.154.161.224:23101/article/api/json?id=278475&siteId=1
conseillé
Classement