Đối với những người quen thuộc với các ngôn ngữ như Java hay C#, JavaScript cung cấp một pattern gọi là pseudoclassical pattern (lớp giả) để tạo một cảm giác quen thuộc với kiểu thừa kế theo lớp (classical inheritance). Xét ví dụ tạo một lớp giả Person (thực tế là một hàm constructor) như sau:

var Person = function (name) {
this.name = name;
};

Thêm phương thức tên get_name vào đối tượng Person như sau:

Person.prototype.get_name = function () {
return this.name;
};

Chúng ta sẽ tạo ra một instance của Person và sử dụng phương thức get_name như sau:

var myPerson = new Person('Ngoc Minh');
var name = myPerson.get_name(); // 'Ngoc Minh'

Thực thi đoạn mã trên.

Chúng ta có thể tạo ra một lớp giả khác, lớp Student, kế thừa Person. Các bước thực hiện như sau:

  • Tạo một hàm constructor cho Student
var Student = function (name) {
this.name = name;
};
  • Thay prototype bằng một instance của Person
Student.prototype = new Person();
  • Tạo ra một instance của Student như sau
var myStudent = new Student('Ngoc Minh');
var name = myStudent.get_name(); // get_name kế thừa từ Person
  • Chúng ta có thể định nghĩa lại phương thức get_name
Student.prototype.get_name = function () {
return "Hi, My name is: "+ this.name;
};
  • Tạo ra một instance khác của Student như sau
var anotherStudent = new Student('Duong Qua');
var name = anotherStudent.get_name(); // Hi, My name is Duong Qua

Thực thi đoạn mã trên.