อ็อบเจ็กต์ภายในคลาสใน OOP ใน JavaScript

ในคลาสสามารถใช้อ็อบเจ็กต์ ของคลาสอื่นได้ มาดูตัวอย่างกัน สมมติว่าเราต้องการสร้างผู้ใช้ ที่มีชื่อและนามสกุล พร้อมกับ เมืองที่เขาอาศัยอยู่ สมมติว่าเรามีคลาสต่อไปนี้ สำหรับเมือง:

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

เราจะส่งชื่อ นามสกุล และเมือง เป็นพารามิเตอร์ให้กับ คอนสตรักเตอร์:

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

โดยชื่อและนามสกุลจะเป็น สตริง แต่เมืองจะเป็นอ็อบเจ็กต์ ของคลาสแยกต่างหาก:

javascriptlet city = new City('luis');
let user = new User('john', 'smit', city);

มาลองแสดงชื่อของผู้ใช้ของเรากัน:

javascriptconsole.log(user.name);

ตอนนี้มาแสดงชื่อเมือง สำหรับผู้ใช้ของเรากัน:

javascriptconsole.log(user.city.name);
Задание 1

กำหนดคลาสต่อไปนี้:

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

ทำให้พารามิเตอร์ที่สองและสาม รับอ็อบเจ็กต์ของคลาสแยกต่างหาก

Задание 2

สร้างอ็อบเจ็กต์พนักงานโดยใช้ คลาสจากโจทย์ก่อนหน้า

Задание 3

แสดงชื่อ ตำแหน่ง และแผนกของพนักงานที่สร้างขึ้นในคอนโซล