程序员书籍笔记 程序员书籍笔记
  • HTML
  • CSS
  • JavaScript
  • 前端知识
  • Vue
  • MarkDown
  • git
  • Node.js
  • Linux
  • 51单片机
  • 四级
  • 第一学期课程
  • 操作系统
  • 计算机网络
  • 数据结构
  • 计算机组成原理
  • HTML5
  • Electron
  • 日记便签
  • 前端导航
GitHub (opens new window)
  • HTML
  • CSS
  • JavaScript
  • 前端知识
  • Vue
  • MarkDown
  • git
  • Node.js
  • Linux
  • 51单片机
  • 四级
  • 第一学期课程
  • 操作系统
  • 计算机网络
  • 数据结构
  • 计算机组成原理
  • HTML5
  • Electron
  • 日记便签
  • 前端导航
GitHub (opens new window)
  • HTML

  • CSS

  • JavaScript

    • es6

      • es6基础
      • es5的扩展
      • let和const命令
    • 基础
    • 运算符和数组
    • 函数
    • 对象和类型
    • 数据类型
    • js接口
    • DOM案例
    • 节点操作
    • BOM接口
    • 页面操作
    • 动画和轮播图
    • 本地存储
    • js面向对象
      • 对象原型
    • es6
    • ES6
    • js面向对象1
    • js面向对象2
    • js面向对象3
  • GO

  • 正则表达式

  • java

  • TypeScript

  • react

  • 前端知识

  • jQuery

  • Python

  • C和C++

  • 前端和后端
  • JavaScript
yuadh
2022-02-05
目录

js面向对象

# 对象原型

JavaScript 常被描述为一种基于原型的语言——每个对象拥有一个原型对象,对象以其原型为模板,从原型继承方法和属性。原型对象也可能拥原型,并从中继承方法和属性,一层一层、以此类推。这种关系常被称为 原型链 ,它解释了为何一个对象会拥有定义在其它对象中的属性和方法

对象原型

每个对象都有个内置属性对象 对象原型 prototype ,这个原型对象是对象本身

function Person(){};
1

这个属性 prototype 对象中有两个属性

  • constructor
  • _proto_

每个 prototype 对象都可能有个原型对象 _proto_ 属性对象,指向的是继承的上一个原型对象可以理解为继承的对象或实例化对象的原型

var person1 = new Person();
1

此处的 person1 实例化对象没有 prototype 属性,但是有 _proto_属性

因为 proson1 实例化对象不是原型类

Person.prototype.age = 404;
1

以这个例子可以输出

Person.prototype:
{
    age:404
    construct:Person()
    _proto_:Object() //继承的父类 
}
1
2
3
4
5
6

编辑 (opens new window)
上次更新: 2023/02/07, 14:51:48
本地存储
es6

← 本地存储 es6→

Theme by Vdoing | Copyright © 2021-2023 yuadh
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式
×