3
votes

Pourquoi console.log enregistre-t-il des résultats différents lorsque j'enregistre chaîne + objet

J'essaye actuellement de résoudre un problème dans mon code. Pour cela, je consigne les objets et j'ajoute un texte devant pour être sûr d'où vient le journal. Comme ces deux exemples:

(3) [{…}, {…}, {…}]
0: {id: 392, taskName: "GMDU", dueDate: "2019-02-07", extraNote: "You have done it all wrong", taskCompleted: true}
1: {id: 391, taskName: "PMB", dueDate: "2019-02-07", extraNote: "Study you lazy ass!", taskCompleted: true}
2: {id: 393, taskName: "INMA", dueDate: "2019-02-07", extraNote: "Do something else", taskCompleted: false}
length: 3
__proto__: Array(0)

Lorsque je me déconnecte des deux exemples ci-dessus, j'obtiens cette sortie:

Todo List get Todos [object Object], [object Object], [object Object]

Sans aucune chaîne devant, j'obtiens cette sortie:

console.log('TodoList Dialog Open: ' + todo);
console.log('Todo List get Todos ' + data);

Y a-t-il un moyen de consigner le objets et ajoutez-y une chaîne?

Merci pour votre aide!


0 commentaires

5 Réponses :


5
votes

Remplacez + par une virgule ,

const arr = [{
  id: 392,
  taskName: "GMDU",
  dueDate: "2019-02-07",
  extraNote: "You have done it all wrong",
  taskCompleted: true
}, {
  id: 391,
  taskName: "PMB",
  dueDate: "2019-02-07",
  extraNote: "Study you lazy ass!",
  taskCompleted: true
}, {
  id: 393,
  taskName: "INMA",
  dueDate: "2019-02-07",
  extraNote: "Do something else",
  taskCompleted: false
}];

console.log('The first object is', arr[0]);
console.log('The whole array is', arr);


0 commentaires

0
votes

console.log peut prendre n'importe quel nombre d'arguments afin que vous puissiez mettre toutes les données dont vous avez besoin pour vous connecter en les séparant par des virgules.

Essayez ceci:

console.log('TodoList Dialog Open: ', todo);
console.log('Todo List get Todos ', data);


0 commentaires

3
votes

Parce que le premier vous avez défini une chaîne, puis un objet ajouté en utilisant l'opérateur de concaténation + , donc son objet de conversion en chaîne, c'est pourquoi vous obtenez une sortie comme celle-ci

​​Pour résoudre votre problème, vous devez utiliser , au lieu de +

console.log('TodoList Dialog Open: ' , todo);
console.log('Todo List get Todos ' , data);


0 commentaires

0
votes
console.log('TodoList Dialog Open: ' + todo);
console.log('Todo List get Todos ' + data);

// Here you use + to concat a string which is actually php syntax you have to change '+' sing with ',' 

console.log('TodoList Dialog Open: ' + todo);
console.log('Todo List get Todos ' + data);

0 commentaires

0
votes

Fondamentalement, vous essayez de combiner alors comme une chaîne, au lieu de cela, vous devez séparer ensuite par ,

console.log ('Todo List get Todos', données);


0 commentaires