J'ai un objet comme celui-ci
{ id:"-L1Rm6VbfLLyFJ3Qi6K", city: "Tokyo", date: "26-08-2004" }
et je veux transformer cet objet comme ceci:
{ -L1Rm6VbfLLyFJ3Qi6K: {city: "Tokyo", date: "26-08-2004" } }
Comment puis-je faire cela? Merci ...
4 Réponses :
Vous pouvez prendre Object .entries et mappez -les au format souhaité.
let obj = { '-L1Rm6VbfLLyFJ3Qi6K': {city: "Tokyo", date: "26-08-2004" } }
let op = Object.entries(obj).map(([key,value]) => ({
id: key,
...value,
}))
console.log(op)
Je ne veux pas pousser cet objet dans un tableau, tout ce que je veux, c'est un objet ...
@SerdarGun Vous pouvez accéder à l'objet à l'intérieur du tableau, n'est-ce pas? votre contribution n'a-t-elle qu'une seule structure de ce type ou il peut y en avoir beaucoup?
Je ne sais pas, il y a un problème dans mon application et j'essaye toutes les manières différentes dans mon code. Je voulais juste apprendre de cette façon, cela peut résoudre mon problème :(
Si l'objet doit être une valeur clé, utilisez-la, sinon, comme @Code Maniac l'a suggéré, vous devriez utiliser une carte ou forEach
const obj = { '-L1Rm6VbfLLyFJ3Qi6K': {city: "Tokyo", date: "26-08-2004" } }
const newobj = {
id: Object.keys(obj)[0],
...obj[Object.keys(obj)]
}
console.log(newobj)
Vous ressemblez peut-être ainsi?
const obj1 = { "-L1Rm6VbfLLyFJ3Qi6K": {city: "Tokyo", date: "26-08-2004" } }
for (const id in obj1) {
Object.assign(obj1, { id, ...obj1[id] })
delete obj1[id];
}
console.log(obj1);
ou réutiliser l'ancien objet de cette manière?
const obj1 = { "-L1Rm6VbfLLyFJ3Qi6K": {city: "Tokyo", date: "26-08-2004" } }
const obj2 = {}
for (const id in obj1) {
Object.assign(obj2, { id, ...obj1[id] })
}
console.log(obj2);
s'il n'y a qu'un seul objet / index auquel vous pouvez accéder de cette manière.
let obj = { '-L1Rm6VbfLLyFJ3Qi6K': {city: "Tokyo", date: "26-08-2004" } }
let op = Object.entries(obj).map(([key,value]) => ({
id: key,
...value,
}))
console.log(op[0])
Utilisez lodash, carte!
Je ne veux pas pousser cet objet dans un tableau, je sais de cette façon ...
Votre objet peut-il avoir plusieurs clés?
Tout comme au-dessus pas beaucoup