JavaScriptda OOBda ob'ektlarni solishtirish

Keling, ob'ektlarni o'z ichiga olgan o'zgaruvchilar qanday solishtirilishiga qaraylik. Ikkita o'zgaruvchi, agar ular bir xil ob'ektga havola o'z ichiga olsa, teng hisoblanadi. Keling, amalda ko'ramiz. Bizda quyidagi sinf mavjud bo'lsin:

javascriptclass User {
  constructor(name) {
    this.name = name;
  }
}

Keling, ushbu sinfning ikkita ob'ektini yaratamiz:

javascriptlet user1 = new User('1');
let user2 = new User('2');

Keling, bir xil ob'ektga havola o'z ichiga olgan o'zgaruvchilarni solishtiramiz:

javascriptconsole.log(user1 === user1); // true

Endi esa, turli ob'ektlarga havola o'z ichiga olgan o'zgaruvchilarni solishtiramiz:

javascriptconsole.log(user1 === user2); // false
Задание 1

Quyidagi kodda solishtirish natijasi qanday bo'lishini ayting:

javascriptclass Employee {
  constructor(name) {
    this.name = name;
  }
}

let emp1 = new Employee('john');
let emp2 = new Employee('eric');

console.log(emp1 === emp2);
Задание 2

Quyidagi kodda solishtirish natijasi qanday bo'lishini ayting:

javascriptclass Employee {
  constructor(name) {
    this.name = name;
  }
}

let emp1 = new Employee('john');
let emp2 = new Employee('eric');

console.log(emp1 === emp1);
Задание 3

Quyidagi kodda solishtirish natijasi qanday bo'lishini ayting:

javascriptclass Employee {
  constructor(name) {
    this.name = name;
  }
}

let emp1 = new Employee('john');
let emp2 = new Employee('john');

console.log(emp1 === emp2);
Задание 4

Quyidagi kodda solishtirish natijasi qanday bo'lishini ayting:

javascriptclass Employee {
  constructor(name) {
    this.name = name;
  }
}

let emp1 = new Employee('john');
let emp2 = new Employee('eric');

console.log(emp1 !== emp1);
Задание 5

Quyidagi kodda solishtirish natijasi qanday bo'lishini ayting:

javascriptclass Employee {
  constructor(name) {
    this.name = name;
  }
}

let emp1 = new Employee('john');
let emp2 = emp1;

console.log(emp1 === emp2);
Задание 6

Quyidagi kodda solishtirish natijasi qanday bo'lishini ayting:

javascriptclass Employee {
  constructor(name) {
    this.name = name;
  }
}

let emp1 = new Employee('john');
let emp2 = new Employee('eric');

console.log(emp1 !== emp2);
Задание 7

Quyidagi kodda solishtirish natijasi qanday bo'lishini ayting:

javascriptclass Employee {
  constructor(name) {
    this.name = name;
  }
}

let emp1 = new Employee('john');
let emp2 = emp1;
emp2.name = 'eric';

console.log(emp1 === emp2);