Trung BìnhJavaScript iconJavaScript

Constructor function và new keyword hoạt động như thế nào?

Khi gọi new MyFunc(), JS thực hiện 4 bước: 1) Tạo object rỗng mới, 2) Gán MyFunc.prototype làm prototype của object đó, 3) Chạy constructor với this là object mới, 4) Tự động return this — trừ khi constructor return tường minh một object khác.

Ví dụ: function Person(name) { this.name = name; } const p = new Person('An') tạo object {name: 'An'} với Person.prototype trong prototype chain. Bẫy: quên new sẽ khiến this trỏ vào global object (hoặc undefined ở strict mode), gây bug khó tìm.

Xem toàn bộ JavaScript cùng filter theo level & chủ đề con.

Mở danh sách JavaScript