一定要注意这个概念:javascript世界里,万物皆对象, function是对象,prototyp也是对象。
 
新建构造函数,并实例
var Person = function(){}
var p = new Person(); 
 
1、prototype 是方法(function)特有的属性,是显性的;
 
 

2、__proto__是对象(注:function也是对象)具有的属性,是隐性的。

3、一个对象(p)的隐式原型(__proto__)指向该对象构造函数(Person)的原型对象(prototype)

 
 
因此对象的实例(p)可以访问该对象构造函数原型对象(Person.prototype)自定义的属性与方法 

4、构造函数(Person)原型对象(prototype)中又包含一个指针(constructor)执行该构造函数
 

5、构造函数(Person)本身也是一个对象,当然也拥有__proto__ 属性,并指向Function对象的原型对象(prototype)

 
6、构造函数(Person)的prototype本身也是一个对象,它的__proto__指向Object的原型对象(prototype)
 

7、Object的原型对象(prototype)的__proto__ 指向null
 

如上所述,也印证了javascript万物皆对象这一特性,也造就了javascript灵活性。

【原创】javascript——prototype与__proto__的更多相关文章

  1. [原创]javascript prototype 对象 函数 <精简的美丽......>

    精简的美丽...... javascript prototype 对象 函数 在javascript中我们都知道创建一个对象使用如下代码var x = {}对象可以拥有属性和方法var x = {   ...

  2. javascript prototype和__proto__

    < script type = "text/javascript" >function Person() { // 属性 this.head = 1; this.eye ...

  3. 关于 JavaScript prototype __proto__ 一点总结

    http://www.cnblogs.com/wbin91/p/5265163.html 先上代码 function(y) Foo{ this.y = y;} Foo.prototype.x = 10 ...

  4. javascript prototype __proto__区别

    An Object's __proto__ property references the same object as its internal [[Prototype]] (often refer ...

  5. Javascript中的__proto__、prototype、constructor

    今天重温了下Javacript,给大家带来一篇Javascript博文,相信对于Javacript有一定了解的人都听过prototype原型这个概念,今天我们深度的分析下prototype与__pro ...

  6. 在 JavaScript 中 prototype 和 __proto__ 有什么区别

    本文主要讲三个 问题 prototype 和 proto function 和 object new 到底发生了什么 prototype 和 proto 首先我们说下在 JS 中,常常让我们感到困惑的 ...

  7. JavaScript中的prototype和__proto__细致解析

    最近在学js,体会了一点点它的灵活性.对于初学者的我,总是被它的灵活感到晕头转向,最近发现了一点东西想与大家分享. JavaScript中的prototype和_proto_: 我们先了解一点js中的 ...

  8. Javascript中的prototype和__proto__的联系区别

    转载至http://www.cnblogs.com/sinstone/p/5136871.html   一.联系 prototype和__proto__都指向原型对象,任意一个函数(包括构造函数)都有 ...

  9. Javascript中的原型链、prototype、__proto__的关系

    javascript  2016-10-06  1120  9 上图是本宝宝用Illustrator制作的可视化信息图,希望能帮你理清Javascript对象与__proto__.prototype和 ...

随机推荐

  1. 【python之旅】python的基础三

    目录: 1.装饰器 2.迭代器&生成器 3.Json & pickle 数据序列化 4.软件目录结构规范  一.装饰器 定义:本质是函数,(装饰其他函数)就是为其他函数添加附加功能 原 ...

  2. SQLSERVER与C#中数据类型的对应关系

    SQLSERVER与C#中数据类型的对应关系 ///<summary> ///数据库中与C#中的数据类型对照 ///</summary> ///<paramname=&q ...

  3. PPT2010小技巧 教你如何快捷抠图

    相信不少人在做PPT时,都有想插入个漂亮个性图案的想法,但是往往手头上的图片都不太令人满意,需要“裁剪”一下才能达不到自己想要的效果.这时大部分人可能会PS,但是相比起今天要分享给大家的方法,步骤就显 ...

  4. redis百度百科和维基百科知识总结:

    1. 百度百科知识总结: Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API.从2010年3月15日起,Redis ...

  5. 反射实体自动生成EasyUi DataGrid模板 第二版--附项目源码

    之前写过一篇文章,地址 http://www.cnblogs.com/Bond/p/3469798.html   大概说了下怎么通过反射来自动生成对应EasyUi datagrid的模板,然后贴了很多 ...

  6. find big file

    #!/bin/bash #command usage description function usage() { echo -e "Usage:nt$0 DIR_NAME" ex ...

  7. ☀【jQuery插件】DOM 延迟渲染

    test.html <!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset=&q ...

  8. JAVA 数组常用技巧

    1.  在Java中输出一个数组(Print an array in Java) int[] intArray = { 1, 2, 3, 4, 5 }; String intArrayString = ...

  9. 【转】win7 虚拟机virtualbox中ubuntu12.04安装samba实现文件共享

    原文网址:http://blog.csdn.net/watkinsong/article/details/8878786 昨天心血来潮,又装了个虚拟机,然后安装了ubuntu12.04,为了实现在虚拟 ...

  10. IE浏览器Ajax缓存问题小结

    IE浏览器Ajax缓存问题 在IE下使用ajax的get方法向后台请求数据时,如果请求URL与之前完全一样,则根本不想后台获取,直接返回上一次请求缓存的数据(在缓存过期之前,针对相同地址发起的多个Aj ...