Comment renvoyer des paires clé-valeur à partir de la fonction map à l'aide de l'opérateur spread
P粉253800312
2023-08-13 17:18:34
<p>J'ai un objet et un tableau. Hypothèse :</p>
<pre class="brush:php;toolbar:false;">const premier = {
'key1' : 'un rendez-vous',
'key2' : "un rendez-vous"
}
const seconde = ['key3', 'key4']</pre>
<p>Utilisez ensuite une syntaxe étendue pour les fusionner en un seul objet. Pour chaque élément du tableau, je souhaite créer une nouvelle paire clé-valeur et la placer dans cet objet fusionné. Actuellement, je ne peux renvoyer que des objets de la fonction map, pas des paires clé-valeur. Comment changer cela ? </p>
<pre class="brush:php;toolbar:false;">const combiné = {
...d'abord,
...second.map(key => ({ [key]: new Date() })) // Renvoie des paires clé-valeur au lieu d'objets
}</pré>
<p>Le résultat obtenu : </p>
<pre class="brush:php;toolbar:false;">{
'0' : { key3 : 'une date' },
'1' : { key4 : 'une date' },
key1 : « un rendez-vous »,
key2 : « un rendez-vous »
}</pré>
<p>Le résultat que je souhaite :</p>
<pre class="brush:php;toolbar:false;">{
key1 : « un rendez-vous »,
key2 : « un rendez-vous »,
key3 : « un rendez-vous »,
key4 : « un rendez-vous »
}</pré>
<p><br /></p>
Je ne peux pas faire ça.
map
Génère un array (où chaque valeur est le résultat du passage de la valeur à l'index correspondant dans le tableau d'origine à la fonction). Si vous développez le tableau en un objet, vous obtiendrez l'index (numéro) comme nom de propriété et la valeur comme valeur.Si vous voulez commencer par un tableau et terminer par un objet, alors
map
就是错误的工具。请改用reduce
n'est pas le bon outil. Veuillez utiliserreduce
à la place.Similaire au code suivant :