JavaScript 原型

简介: 原型对象:每一个对象都从原型继承属性 原型的存在 所有通过对象直接量创建的对象都具有同一个原型对象,通过Object.prototype获得对该原型对象的引用 通过new关键字和构造函数创建的对象的原型就是构造函数的prototype属性的值,当然通过new Object()创建的对象也继承自Object.

原型对象:每一个对象都从原型继承属性

原型的存在


  • 所有通过对象直接量创建的对象都具有同一个原型对象,通过Object.prototype获得对该原型对象的引用
  • 通过new关键字和构造函数创建的对象的原型就是构造函数的prototype属性的值,当然通过new Object()创建的对象也继承自Object.prototype
  • 通过Object.create()创建的对象使用第一个参数作为创建对象的原型
  • 没有原型的对象为数不多,Object.prototype就是其中之一,不继承任何属性
  • 所有的内置构造函数都具有一个继承自Object.prototype的原型,所以Array.prototype继承自Object.prototype,由new Array()创建的Array对象的属性同时继承自Array.prototype和Object.prototype。则一系列原型对象链接起来构成了我们所说的原型链

原型的作用


  • 类继承:原型对象的属性被类的所有实例所继承,如果原型对象的值是函数,这个函数就做作为类的实例方法调用

原型的访问


  • 类访问原型对象的方式:ClassName.prototype
  • 类的实例访问原型对象的方式:ObjectName.constructor.prototype(ObjectName.__ proto__)
目录
相关文章
|
7月前
|
JavaScript 前端开发
js开发:请解释原型继承和类继承的区别。
JavaScript中的原型继承和类继承用于共享对象属性和方法。原型继承通过原型链实现共享,节省内存,但不支持私有属性。
57 0
|
7月前
|
JavaScript 前端开发 Java
深入JS面向对象(原型-继承)(三)
深入JS面向对象(原型-继承)
55 0
|
20天前
|
JavaScript 前端开发
JavaScript中的原型 保姆级文章一文搞懂
本文详细解析了JavaScript中的原型概念,从构造函数、原型对象、`__proto__`属性、`constructor`属性到原型链,层层递进地解释了JavaScript如何通过原型实现继承机制。适合初学者深入理解JS面向对象编程的核心原理。
20 1
JavaScript中的原型 保姆级文章一文搞懂
|
4月前
|
JavaScript 前端开发
如何在JavaScript中实现基于原型的继承机制
【8月更文挑战第14天】如何在JavaScript中实现基于原型的继承机制
31 0
|
3月前
|
JSON JavaScript 前端开发
js原型继承|26
js原型继承|26
|
3月前
|
JavaScript 前端开发
JavaScript prototype(原型对象)
JavaScript prototype(原型对象)
35 0
|
3月前
|
JavaScript 前端开发
JavaScript基础知识-原型(prototype)
关于JavaScript基础知识中原型(prototype)概念的介绍。
42 1
|
4月前
|
JavaScript 前端开发
JavaScript中什么是原型?有什么用?
JavaScript中什么是原型?有什么用?
23 1
|
4月前
|
JavaScript 前端开发 Java
什么是JavaScript原型对象
【8月更文挑战第2天】什么是JavaScript原型对象
62 9
|
6月前
|
设计模式 JavaScript 前端开发
【JavaScript】深入浅出JavaScript继承机制:解密原型、原型链与面向对象实战攻略
JavaScript的继承机制基于原型链,它定义了对象属性和方法的查找规则。每个对象都有一个原型,通过原型链,对象能访问到构造函数原型上的方法。例如`Animal.prototype`上的`speak`方法可被`Animal`实例访问。原型链的尽头是`Object.prototype`,其`[[Prototype]]`为`null`。继承方式包括原型链继承(通过`Object.create`)、构造函数继承(使用`call`或`apply`)和组合继承(结合两者)。ES6的`class`语法是语法糖,但底层仍基于原型。继承选择应根据需求,理解原型链原理对JavaScript面向对象编程至关重要
145 7
【JavaScript】深入浅出JavaScript继承机制:解密原型、原型链与面向对象实战攻略