0
votes

JavaScript comparer la clé d'objet et le tableau et renvoyer nouvel objet

Pourriez-vous s'il vous plaît aider à réaliser en dessous de la sortie Compare Var1 et Var2 et à obtenir une sortie à base de VAR2 où la touche est fournie dans la chaîne de sortie de tableau

var3 = {a:1, d:4};


0 commentaires

4 Réponses :


3
votes
const var3 = var2.reduce((acc, cur) => {
  if (var1[cur]) {
    acc[cur] = var1[cur];
  }
  return acc;
}, {})
https://jsfiddle.net/chp510nj/

2 commentaires

Merci pour la solution que j'ai eu affaire. où la clé n'est pas disponible en tableau par exemple. var var1 = {A: 1, B: 2, C: 3, D: 4}; var var2 = ['a', 'd', 'f']; J'ai une sortie comme Var3 = {A: 1, D: 4};


@Gauthamshetty a simple si résoudra cela. voir Modifier



0
votes

Utiliser .foForeach code>

p>

var var1 = {a:1,b:2,c:3,d:4}; var var2 =['a','d'];
var var3 = {};

var2.forEach(i=>{
 var3[i] = var1[i]
})


console.log(var3)


2 commentaires

Merci pour la solution que j'ai eu affaire. où la clé n'est pas disponible en tableau par exemple. var var1 = {A: 1, B: 2, C: 3, D: 4}; var var2 = ['a', 'd', 'f']; J'ai une sortie comme Var3 = {A: 1, D: 4};


Je ne t'ai pas eu. L'affaire que vous avez fournie fonctionnerait toujours avec cette solution.



0
votes

Vous pouvez .map () code> chaque touche dans var2 code> à un objet contenant la clé et sa valeur associée. À partir de cette matrice mappée, vous pouvez affecter chaque objet à un objet à l'aide d'un objet objet.Assign () code>:

p>

const var1 = {a:1,b:2,c:3,d:4};
const var2 = ['a','d', 'f'];

const var3 = Object.fromEntries(var2.filter(id => id in var1).map(id => [id, var1[id]]));
console.log(var3);


2 commentaires

Merci pour la solution que j'ai eu affaire. où la clé n'est pas disponible en tableau par exemple. var var1 = {A: 1, B: 2, C: 3, D: 4}; var var2 = ['a', 'd', 'f']; J'ai une sortie comme Var3 = {A: 1, D: 4};


@Gauthamshetty j'ai mis à jour ma réponse pour gérer ces cas



0
votes

Vous pouvez utiliser objet.entries et itérer xxx


1 commentaires

Merci pour la solution que j'ai eu affaire. où la clé n'est pas disponible en tableau par exemple. var var1 = {A: 1, B: 2, C: 3, D: 4}; var var2 = ['a', 'd', 'f']; J'ai une sortie comme Var3 = {A: 1, D: 4};