F8

FULLSTACK HUB

0%|~3 phút đọc
Hoàn thành đọc bài! +1 Ngày Streak
Thói quen học tập đã được ghi nhận vào Biểu đồ đóng góp.
Bài Tập 19 tháng 7, 2026 lúc 05:06
Thuộc bài học:[Buổi 20] - Dat 20: Advanced Objects

Buổi 20: Objects nâng cao trong JavaScript

Giải bài tập đầu buổi

Exercise 10 (Constructor method): Viết hàm tạo Animal(name, sound)​ gán this.name​, this.sound​ và method makeSound()​ in ra "${this.name} says {this.sound}"​ và method makeSound()​. Tạo cat = new Animal("Mèo", "Meo)​ và dog = new Animal("Chó", "Gâu")​. Gọi makeSound()​ cho cả 2.
function Animal(name, sound) {
    this.name = name;
    this.sound = sound;
    this.makeSound = function () {
        console.log(`${this.name} says ${this.sound}`);
    }
}

const cat = new Animal("Mèo", "Meo"); const dog = new Animal("Chó", "Gâu");

cat.makeSound() dog.makeSound()

1. Definitions (Định nghĩa)

Tìm hiểu nâng cao về tạo 1 Object
Các cách đã được học ở buổi 19, xem lại ở đây
  • Cách 1 dùng Object Literals const user = { }
  • Cách 2 dùng một cái Object Constructor const user = new Object({})
  • Cách 3 Function Constructor 
function User (name) {
  this.name = name;
}

const user = new User("John");


Hôm nay sẽ học cách thứ 4 đó là 3 phương thức có sẵn trong đối tượng Object​ 

1.1 Phương thức Object.assign()

Phương thức Object.assign()​ này nó sẽ gôm các thuộc tính trong Object nguồn vào Object đích - nó gộp vào trừ phải sang trái và trả ra
console.log(Object.assign({}, {name: "Vũ Quốc Dũng", age: 27}));
nếu như trùng thuộc tính thì nó sẽ ghi đè.
Cách code bên trên tương tự cách trên nhưng là cách khó (Tham khảo cách viết ES6)
  const userArr = [
    {name: "Nguyễn Văn A", age: 23},
    {
        language: "JavaScript",
    },
    {
        skill: "Soft Skill",
    },
  ]

console.log(Object.assign({}, ...userArr));

1.2 Phương thức thứ 2 Object.create()

Cái Object.create()​ nó sẽ tạo ra 1 Object mới, Object mới này sẽ có toàn bộ thuộc tính bên trong, nhưng in ra thì là 1 Object rỗng thôi nhưng truy cập giá trị thì vẫn có.

const newUser = Object.create({
    name: "Vũ Quốc Dũng",
    age: 27,
})

console.log(newUser.name);

1.3 Phương thức Object.fromEntries()

const arr = [ 
  ["name", "Vũ Quốc Dũng"],
  ["age", 27],
  ["language", "JavaScript"],
  ["skill", "Soft Skill"]
];

console.log(Object.fromEntries(arr));

Nó sẽ lấy phần tử đầu tiên từng mảng con làm keyphần tử thứ 2 của từng mảng con làm value

Đây là các cách định nghĩa, các cách tạo Object​. Giờ đây chúng ta sẽ sang học This​ nâng cao

2. This​ Advance (This nâng cao)

Hôm nay chúng ta sẽ học this​ trong Arrow function 



Thống Kê Liên Kết

Nội bộ
1
Liên kết ngoài
0