85 votes

Convertir un tableau en clés d'objet

Quelle est la meilleure façon de convertir un tableau, en un objet avec ces valeurs de tableau comme clés, les chaînes vides servent de valeurs du nouvel objet.

 ['a','b','c']

à:

 {
  a: '',
  b: '',
  c: ''
}

157voto

prasanth Points 12892

essayer avec Array#Reduce

 const arr = ['a','b','c'];
const res = arr.reduce((acc,curr)=> (acc[curr]='',acc),{});
console.log(res)

18voto

Alexus Points 577
var target = {}; ['a','b','c'].forEach(key => target[key] = "");

12voto

Vous pouvez utiliser la propriété Object.assign pour combiner des objets créés avec une fonction de carte, veuillez prendre en compte que si les valeurs des éléments du tableau ne sont pas uniques, ces dernières remplaceront les précédentes

 const array = Object.assign({},...["a","b","c"].map(key => ({[key]: ""})));
console.log(array);

8voto

brk Points 23303

Vous pouvez utiliser la fonction de réduction de tableau et passer un objet vide dans l'accumulateur. Dans cet accumulateur, ajoutez la clé qui est notée curr

 let k = ['a', 'b', 'c']

let obj = k.reduce(function(acc, curr) {
  acc[curr] = '';
  return acc;
}, {});
console.log(obj)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X