Objectvergelijking in OOP in JavaScript
Laten we eens kijken hoe variabelen die objecten bevatten worden vergeleken. Twee variabelen worden als gelijk beschouwd als ze een referentie naar hetzelfde object bevatten. Laten we dit in de praktijk bekijken. Stel dat we de volgende klasse hebben:
javascriptclass User {
constructor(name) {
this.name = name;
}
}
Laten we twee objecten van deze klasse aanmaken:
javascriptlet user1 = new User('1');
let user2 = new User('2');
Laten we variabelen vergelijken die een referentie naar hetzelfde object bevatten:
javascriptconsole.log(user1 === user1); // true
En laten we nu variabelen vergelijken die een referentie naar verschillende objecten bevatten:
javascriptconsole.log(user1 === user2); // false
Vertel wat het resultaat zal zijn van de vergelijking in de volgende code:
javascriptclass Employee {
constructor(name) {
this.name = name;
}
}
let emp1 = new Employee('john');
let emp2 = new Employee('eric');
console.log(emp1 === emp2);
Vertel wat het resultaat zal zijn van de vergelijking in de volgende code:
javascriptclass Employee {
constructor(name) {
this.name = name;
}
}
let emp1 = new Employee('john');
let emp2 = new Employee('eric');
console.log(emp1 === emp1);
Vertel wat het resultaat zal zijn van de vergelijking in de volgende code:
javascriptclass Employee {
constructor(name) {
this.name = name;
}
}
let emp1 = new Employee('john');
let emp2 = new Employee('john');
console.log(emp1 === emp2);
Vertel wat het resultaat zal zijn van de vergelijking in de volgende code:
javascriptclass Employee {
constructor(name) {
this.name = name;
}
}
let emp1 = new Employee('john');
let emp2 = new Employee('eric');
console.log(emp1 !== emp1);
Vertel wat het resultaat zal zijn van de vergelijking in de volgende code:
javascriptclass Employee {
constructor(name) {
this.name = name;
}
}
let emp1 = new Employee('john');
let emp2 = emp1;
console.log(emp1 === emp2);
Vertel wat het resultaat zal zijn van de vergelijking in de volgende code:
javascriptclass Employee {
constructor(name) {
this.name = name;
}
}
let emp1 = new Employee('john');
let emp2 = new Employee('eric');
console.log(emp1 !== emp2);
Vertel wat het resultaat zal zijn van de vergelijking in de volgende code:
javascriptclass Employee {
constructor(name) {
this.name = name;
}
}
let emp1 = new Employee('john');
let emp2 = emp1;
emp2.name = 'eric';
console.log(emp1 === emp2);