Comparaison d'objets en JavaScript : pourquoi {} !== {} et comment comparer correctement ?
Bonjour à tous ! Je viens de commencer à étudier JavaScript et j'ai rencontré une situation incompréhensible. J'essaie de comparer deux objets qui semblent parfaitement identiques, mais j'obtiens false.
Voici mon code :
```javascript
const user1 = { name: 'Анна', age: 25 };
const user2 = { name: 'Анна', age: 25 };
console.log(user1 === user2); // false
console.log(user1 == user2); // également false
```
Je m'attendais à ce que ce soit true, car les propriétés et leurs valeurs correspondent ! Mais JavaScript dit qu'ils sont différents. Pourquoi cela se produit-il ?
Je comprends que pour les nombres et les chaînes, cela fonctionne normalement :
```javascript
console.log(5 === 5); // true
console.log('привет' === 'привет'); // true
```
Mais avec les objets — non. J'ai essayé de comparer via JSON.stringify :
```javascript
console.log(JSON.stringify(user1) === JSON.s