Sammenligning af objekter i OOP i JavaScript
Lad os se på, hvordan variabler, der indeholder objekter, sammenlignes. To variabler vil blive betragtet som lige, hvis de indeholder en reference til det samme objekt. Lad os se på det i praksis. Lad os sige, at vi har følgende klasse:
class User {
constructor(name) {
this.name = name;
}
}
Lad os oprette to objekter af denne klasse:
let user1 = new User('1');
let user2 = new User('2');
Lad os sammenligne variabler, der indeholder reference til det samme objekt:
console.log(user1 === user1); // true
Og lad os nu sammenligne variabler, der indeholder reference til forskellige objekter:
console.log(user1 === user2); // false
Forklar, hvad resultatet af sammenligningen i følgende kode vil være:
class Employee {
constructor(name) {
this.name = name;
}
}
let emp1 = new Employee('john');
let emp2 = new Employee('eric');
console.log(emp1 === emp2);
Forklar, hvad resultatet af sammenligningen i følgende kode vil være:
class Employee {
constructor(name) {
this.name = name;
}
}
let emp1 = new Employee('john');
let emp2 = new Employee('eric');
console.log(emp1 === emp1);
Forklar, hvad resultatet af sammenligningen i følgende kode vil være:
class Employee {
constructor(name) {
this.name = name;
}
}
let emp1 = new Employee('john');
let emp2 = new Employee('john');
console.log(emp1 === emp2);
Forklar, hvad resultatet af sammenligningen i følgende kode vil være:
class Employee {
constructor(name) {
this.name = name;
}
}
let emp1 = new Employee('john');
let emp2 = new Employee('eric');
console.log(emp1 !== emp1);
Forklar, hvad resultatet af sammenligningen i følgende kode vil være:
class Employee {
constructor(name) {
this.name = name;
}
}
let emp1 = new Employee('john');
let emp2 = emp1;
console.log(emp1 === emp2);
Forklar, hvad resultatet af sammenligningen i følgende kode vil være:
class Employee {
constructor(name) {
this.name = name;
}
}
let emp1 = new Employee('john');
let emp2 = new Employee('eric');
console.log(emp1 !== emp2);
Forklar, hvad resultatet af sammenligningen i følgende kode vil være:
class Employee {
constructor(name) {
this.name = name;
}
}
let emp1 = new Employee('john');
let emp2 = emp1;
emp2.name = 'eric';
console.log(emp1 === emp2);