site infoHacknerd | Tech Blog
blog cover

🎐 [JavaScript高级程序设计] 8. 对象、类与面向对象编程

JavaScript

对象

原型模式

每个函数都会创建一个 prototype 属性,这个属性是一个对象(原型对象),包含应该由特定引用类型的实例共享的属性和方法

javascriptCopy
function Person() {} 
Person.prototype.name = "Nicholas"; 
Person.prototype.age = 29; 
Person.prototype.job = "Software Engineer"; 
Person.prototype.sayName = function() { 
 console.log(this.name); 
}; 
let person1 = new Person(); 
person1.sayName(); // "Nicholas" 
let person2 = new Person(); 
person2.sayName(); // "Nicholas" 

  • 1.理解原型
  • 2.

  • 继承

    很多面向对象语言都支持两种继承:接口继承和实现继承。但ECMAScript 中函数没有签名,没法实现接口继承。实现继承是唯一的继承方式,通过原型链实现。

    原型链

    基本思想通过原型继承多个引用类型的属性和方法。

    每个构造函数都有一个原型对象,原型有一个属性指回构造函数,而实例有一个内部指针指向原型。

    盗用构造函数

    组合继承

    原型式继承

    寄生式继承

    Contents

    • 对象
    • 原型模式
    • 继承
    • 原型链
    • 盗用构造函数
    • 组合继承
    • 原型式继承
    • 寄生式继承

    2024/03/28 13:30