js 原型 和 原型链

function Person(name,age){

this.name = name

this.age = age

}

var p = new Person('张三',11)

//创建构造函数的时候,解析器会自动为构造函数创建prototype属性,prototype属性对应的对象就是原型对象

// prototype 翻译为 原型

// prototype 用于定义构造函数创建的实例对象 所共享的属性和方法

console.log(Person.prototype === p.proto) //true

// ECMAScript 标准 是 Object.getPrototypeOf()

console.log(Person.prototype === Object.getPrototypeOf(p)) //true

console.log(Person.hasOwnProperty('name')) //true

console.log(p.hasOwnProperty('name')) //true

Person.prototype.sex = '男'

console.log(Person.hasOwnProperty('sex')) //false

console.log(Person.prototype.hasOwnProperty('sex')) //true

console.log(p.hasOwnProperty('sex')) //false

console.log(p.proto.hasOwnProperty('sex')) //true

// 原型链是一种对象之间通过原型关系关联行程的链式结构
// 原型链的查找方向
// p.proto Person.prototype Object.prototype

相关推荐
麦序子4 分钟前
用 Python + python-docx 批量生成带表格样式的装修报价单 Word 文档(含合计公式)
开发语言·python·自然语言处理·word·python3.11
1-1=014 分钟前
Python PyCharm
开发语言·python·pycharm
牛肉胡辣汤18 分钟前
Blender + Three.js 开发讲解:从 .blend 到能转的产品页
开发语言·javascript·blender
惊讶的猫20 分钟前
Spring AOP
java·开发语言
ii_best39 分钟前
按键精灵手机助手 v5.2.1 实测:inputText 逐字延时 + 调试面板多行复制,安卓脚本开发的两个输入痛点一次解决
android·开发语言·智能手机·自动化·ai编程·按键精灵
波力海苔夹心脆67541 分钟前
C# StringBuilder 详解:字符串拼接为什么总说要用它?
开发语言·笔记·c#·.net·字符串·stringbuilder·入门教程
程序员大阳1 小时前
副队长JavaScript教程(20)–三元运算符、逗号运算符
javascript·三元运算符·逗号运算符
Wang's Blog1 小时前
Java 项目实战: 交友项目 - 今日佳人:需求分析
java·开发语言·交友
老孟说禅1 小时前
自动化测试入门(一)
开发语言·python
余额瞒着我当琳1 小时前
C++11,发展历史浅谈,初始化列表和对象初始化,右值引用和移动语义
java·开发语言·c++·算法