js的__proto__与propertype的关系
经典的再也不能经典的一篇博客:http://www.cnblogs.com/snandy/archive/2012/09/01/2664134.html
js中最propertype的一些方法的理解http://www.cnblogs.com/yjf512/archive/2011/06/03/2071914.html
var sss = new Object();
对于sss是一个对象,任何对象的.__proto__属性表示的是他构造器的.prototype的值(这里边挂的方法也就是他继承的方法或内置方法),而此处Object.prototype的值,typeof 除了function以外的任何Object.prototype都是小写的object,所以此处是一个Object.prototype的值是一个Object类型的对象。有包含的,valueOf方法和toString方法,isPrototypeOf,hasOwnProperty,当然还有constructor表示的是这个object对象的构造器,Object类,这个类的__proto__是Function.prototype.也就是空的function(){}. 我们查找内置方法的办法就是,输入大写Object.prototype.
这些东西总是忘:
这里我们可以知道,普通的对 d 像的的__proto__属性是个空的 的{}这是个.
我们调用继承的方法。 这里我们需要知道,普通的对象的__proto__含有的是他的内置的方法。
var box={name:"yan",arr:[1,3,5],obj:{objName:"objyan",age:20}}创建的对象和 var box1=new Object();是一样的。他们的__proto__都是Object {}空的object对象。并没有object对应的属性和内置方法。(没有__proto__) 但是其他的方法创建的对象就不同了。
var yan=function(){this.name="yan"} var ss=new yan() ss.__proto__就表示一个yan的空对象,里边有constructor和__proto__这两个属性,然后我们点开__proto__然后就是一个空的object对象。不过这是原型链的继承方式。 不同的继承方式的__proto__是不同的。
================================================
不同的继承方式的建立的对象的__proto__是不同的
类的prototype 不论是parent.prototype显示的是parent{},String.prototype的是String{}但是typeof他们都是objec他们对象的__proto__都是object 不同的继承方式对象的__proto__是不同的。 所以这里我们需要想什么才是继承,怎么证明他是继承的,还是我们只需要管他继承了父类的方法和属性就行,不管怎么实现的。 一切方法都继承自function。我们怎么证明方法继承自function,然后我们就怎么确定son和parent的关系。所以我们obj.__proto__是自身的son{}对象就不合理,而且你看这个son中的contructor在看prototype也就乱了。
http://www.108js.com/article/article1/10201.html?id=1092
js的__proto__与propertype的关系的更多相关文章
- 原型链继承中的prototype、__proto__和constructor的关系
前不久写了有关原型链中prototype.__proto__和constructor的关系的理解,这篇文章说说在原型链继承中的prototype.__proto__和constructor的关系. 通 ...
- js中__proto__和prototype的区别和关系?
_proto__(隐式原型)与prototype(显式原型)1.是什么 显式原型 explicit prototype property: 每一个函数在创建之后都会拥有一个名为prototype的属性 ...
- js中__proto__和prototype constructor 的区别和关系
https://www.zhihu.com/question/34183746 javaScript原型.原型链的定义? prototype:每个函数都有一个prototype(显式原型),这个属性是 ...
- 理解js中__proto__和prototype的区别和关系
首先,要明确几个点:1.在JS里,万物皆对象.方法(Function)是对象,方法的原型(Function.prototype)是对象.因此,它们都会具有对象共有的特点.即:对象具有属性__proto ...
- [转载]js中__proto__和prototype的区别和关系
首先,要明确几个点:1.在JS里,万物皆对象.方法(Function)是对象,方法的原型(Function.prototype)是对象.因此,它们都会具有对象共有的特点.即:对象具有属性_ ...
- js中__proto__(内部原型)和prototype(构造器原型)的关系
一.所有构造器/函数的__proto__都指向Function.prototype,它是一个空函数(Empty function) Number.__proto__ === Function.prot ...
- js中__proto__和prototype的区别和关系
首先,要明确几个点:1.在JS里,万物皆对象.方法(Function)是对象,方法的原型(Function.prototype)是对象.因此,它们都会具有对象共有的特点.即:对象具有属性_ ...
- (转)js中__proto__和prototype的区别和关系
作者:doris链接:https://www.zhihu.com/question/34183746/answer/58155878来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请 ...
- js中__proto__和prototype的区别和关系? 这样好理解多了
原型的概念 真正理解什么是原型是学习原型理论的关键.很多人在此产生了混淆,没有真正理解,自然后续疑惑更多. 首先,我们明确原型是一个对象,其次,最重要的是, Every function has a ...
随机推荐
- 限制input输入类型(多种方法实现)
1.只能输入和粘贴汉字 <input onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,'')" onbeforepaste= ...
- IOS版本被拒的经历
IOS版本被拒的经历: 1,登陆方式依赖外部平台 因为我们的APP是只用微博登陆,想做成类似meerkat类型的,也能各种消息都同步微博. 结果当然行不通,这个确实是不听好人言,网上多个人都说过这个问 ...
- selenium更改readonly属性
1.用js实现 JavascriptExecutor removeAttribute = (JavascriptExecutor)dr; //remove readonly attrib ...
- is A和has A的区别
is A has A Red is A Color: class Red extends Color{} class Blue extends Color{} class Yellow exrends ...
- codeforces 711A A. Bus to Udayland(水题)
题目链接: A. Bus to Udayland 题意: 找一对空位坐下来,水; 思路: AC代码: #include <iostream> #include <cstdio> ...
- 在Android Studio中使用shareSDK进行社会化分享(图文教程)
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- github结合TortoiseGit使用sshkey,无需输入账号和密码
1.github上支持三种方式进行项目的clone https,ssh,subversion https://github.com/用户名/版本库.git ssh的方式 git@github.c ...
- 三维世界的Gizmos
Unity和Maya 今天在美术同事那儿了解些Maya常识,加上自己在Unity3D中的一点儿小操作,记录一下Gizmos 之前就知道Maya和Unity3D的轴向是一致的,在同事那儿看他操作Maya ...
- getEl mask 用法
- 整理MAC下Eclipse的常用快捷键
整理Eclipse常用快捷键 开发环境切换到Mac下后原来Window下的快捷键很大一部分是不相容的,习惯了快捷键的生活忽然哪天快捷键不起作用了,跟着的就是开发效率明显降低,频繁录入错误的快捷键让Ec ...