prototype 和 __proto__
/*
* 1.构造函数里有属性及方法----->其构造的实例对象直接通过new构造时获得这些属性和方法
* 2.构造函数里的原型prototype----->这个原型对象:包括1).原型对象里的属性和方法 --->实例化对象里的__proto__指向这个原型对象,可以访问这里的属性和方法
* 2).constructor构造器--->指向构造函数
* 3).__proto__---->Object这个构造函数的原型对象Object.prototype
*
* 3.构造函数里的__proto__----->指向构造他的构造函数的原型对象---->Function.prototype
*
*
* 4.实例对象的原型__proto__---->指向构造他的构造函数的原型对象---构造函数的prototype
* 实例化对象与构造函数之间没有直接联系,通过原型对象进行联系,这就是原型链
*
* 5.改变原型的指向实现继承:将一个构造函数的prototype指向一个实例化对象(a),那么由这个构造函数构造的实例化对象(b)的__proto__就指向了
* 这个实例化对象(a),由此b可以得到a的属性和方法,并且可以通过a的__proto__获得a的构造函数原型prototype里的属性和方法
*
* 6.prototype和__proto__
*
* prototype是函数(普通函数或构造函数或方法)特有的原型--->指向一个原型对象,即prototype对象:里面包含着可以继承的原型属性和方法
* prototype的指向可以改变,通过改变prototype的指向,可以形成多级的原型链,实现多代的继承
*
* __proto__是对象特有的隐式原型,指向构造这个对象的构造函数的prototype
*
* 一个实例化对象的原型链就是通过__proto__的这个指向得出的,这样实例化对象可以得到构造函数原型对象里的属性和方法,实现继承
*
*
*
* 7.函数可以看成一个对象,那么他的__proto__指向哪里呢?指向构造他的构造函数的prototype,所以就指向Function.prototype
* 所有的函数都可以看成是Function的一个实例化对象
* 另外,Function是其自身的构造函数,Function.__proto__ 就指向其自身的原型对象Function.prototype
* console.dir(Function.prototype == Function.__proto__); 结果为true
*
* 8. 对象的__proto__会指向指向构造这个对象的构造函数的prototype,那么原型链最终的原型对象prototype这个对象的__proto__指向
* 哪里呢?------>指向Object.prototype
* 即原型对象是Object这个构造函数的实例化对象
* Object.prototype.__proto__最终为null
*
*
*
*
* */

prototype 和 __proto__的更多相关文章
- js中的prototype和__proto__
var Person = function(name){ this.name = name; this.say = function(){ return "I am " + thi ...
- JS的prototype和__proto__ Constructor
一.prototype和__proto__的概念 prototype是 注意是 只有函数的一个属性才有的(每个函数都有一个prototype属性),这个属性是一个指针,指向一个普通对象并且不是原型对象 ...
- prototype和__proto__
一.prototype和__proto__的概念 prototype是函数的一个属性(每个函数都有一个prototype属性),这个属性是一个指针,指向一个对象.它是显示修改对象的原型的属性. __p ...
- Js中Prototype、__proto__、Constructor、Object、Function关系介绍
一. Prototype.__proto__与Object.Function关系介绍 Function.Object:都是Js自带的函数对象.prototype,每一个函数对象都有一个显式的proto ...
- 面向对象的程序设计(二)理解各种方法和属性typeof、instanceof、constructor、prototype、__proto__、isPrototypeOf、hasOwnProperty
//理解各种方法和属性typeof.instanceof.constructor.prototype.__proto__.isPrototypeOf.hasOwnProperty. //1.typeo ...
- 【原创】javascript——prototype与__proto__
一定要注意这个概念:javascript世界里,万物皆对象, function是对象,prototyp也是对象. 新建构造函数,并实例 var Person = function(){} var ...
- 在 JavaScript 中 prototype 和 __proto__ 有什么区别
本文主要讲三个 问题 prototype 和 proto function 和 object new 到底发生了什么 prototype 和 proto 首先我们说下在 JS 中,常常让我们感到困惑的 ...
- 原型及原型链,以及prototype和__proto__属性(笔记便于以后复习)
首先,js的数据结构有 原始类型(5种):Boolean.Number.String.Null.Underfined, 然后是引用类型:Array.Date.Error.RegExp.Function ...
- 04面向对象编程-01-创建对象 和 原型理解(prototype、__proto__)
1.JS中对象的"不同":原型概念 从Java中我们可以很好地去理解 "类" 和 "实例" 两个概念,可是在JavaScript中,这个概念 ...
- 【前端】JavaScript中prototype和__proto__的区别
转载请注明出处:http://www.cnblogs.com/shamoyuu/p/prototype.html 经常有小伙伴问我关于prototype和__proto__的问题,觉得有必要写一篇博客 ...
随机推荐
- C#窗体-猜数字
1.用到的控件:groupbox.label.textbox.button.menustrip等 2.实现的功能,随机产生一个数字,输入自己猜的答案,判断是否猜对. 3.运行结果 4.代码 using ...
- oracle数据入库
oracle数据入库 注意:先要处理文件中的分隔符 将数据分列 创建为标准的sql语句 1.在oracle数据库中创建要入库的表如果有该表则不用创建(注:创建字段的数据类型要符合实际逻辑 va ...
- ROS零门槛学渣教程系列(二十)——ROSJAVA和Android
ros wiki地址:http://wiki.ros.org/android 第一步:安装JDK (参考博文:https://blog.csdn.net/Hong_A/article/details/ ...
- PHP开发——目录
PHP开发基础 PHP开发——环境安装 PHP开发——基础 PHP开发——变量 PHP开发——超全局数组变量 PHP开发——常量 PHP开发——数据类型 PHP开发——进制转换 PHP开发——运算符 ...
- 用同一台PC的两个网口实现Iperf的server端和client端
用同一台PC的两个网口实现Iperf的server端和client端 2015年10月20日 20:35:11 阅读数:2943 有时候需要发包,仅仅需要一定速率的流量,并不需要关心收到报文的大小,一 ...
- Autel MaxiTPMS TS601 Wireless TPMS Sensor Reset Relearn Activate Programming Tool
Why Choose Autel TPMS TS601? MaxiTPMS TS601 is a TPMS tool with highest performance in the world. It ...
- JAVA课程设计-教学论坛系统
团队课程设计博客 1. 团队名称:教学论坛系统设计团队 团队成员介绍: 郑佳亮(组长):201721123022,查看帖子,点赞,参与度,搜索,管理员删帖的后端,点赞,参与度前端 李于程(组员):20 ...
- angular的json
在angular从servlet中获取的list数据是字符串格式,需要转为json格式,于是使用语法: $scope.findOne=function(id){ typeTemplateService ...
- java之路 把1到100之间的数的偶数相加
/** *把1到100之间的数的偶数相加 */ class Demo{ public static void main(String[] args){ int i =1; int sum = 0; d ...
- 常用JSON接口
地图接口阿里云根据地区名获取经纬度接口http://gc.ditu.aliyun.com/geocoding?a=苏州市 官方文档参数解释: 纬度,经度 type 001 (100代表道路,010代表 ...