Làm việc với các object prototypes trong Javascript
Mọi object Javascript có một prototype, cái là một mẫu cho tất cả các đặc tính và phương thức liên
quan đến class của object. Nếu constructor function có thể được nghĩ như một bộ máy để khởi tạo các
objects, thì một prototype là blueprint cho object đó. Khi một object được khởi tạo từ một constructor
function, nó sử dụng các đặc tính và phương thức định nghĩa trong prototype.
Tuy nhiên, khởi tạo các objects mới có thể là một sử dụng không hiệu quả bộ nhớ và tài nguyên vì cùng code
được copy từ constructor function vào mỗi object instance. Tưởng tượng căng thẳng trên tài nguyên khi một
vài phương thức với hàng tá dòng code mỗi cái được copy từ constructor function vào hàng nghàn object instances.
Một cách tiếp cận tốt hơn là đặt code cho các phương thức đó trực tiếp vào object s prototype, cái sau đó có
thể truy cập được đối với constructor function và tất cả object instances mà không cần các bản sao riêng rẽ.