首页 > 代码库 > 再说javascript 的__proto__ 和prototype 属性
再说javascript 的__proto__ 和prototype 属性
过了一段时间,没写 原生的 javascript 的了,感觉天天在用框架写代码,框架写代码完全限定死了你所需要思考的东西,只是在处理一些业务逻辑,真正的代码
都感觉不会写了。 突然发现,框架用的不熟悉,原生的代码也忘得差不多了。感觉很难受,人生不能这样子度过!
重新翻开《javascript 高级程序设计》, 回归到本原。工作上用框架写代码没错,业余时间的话就要自己多写一点原生的代码,或者说研究、模仿、直到自己设计一个
框架出来。
js 中的类, 对象, 类的静态变量,类的继承 。
function Scope(){
}
这样就是定义了一个类了。
-------------------------------------------------------------------
This figure again shows that every object has a prototype. Constructor function Foo also has its own
__proto__
which is Function.prototype, and which in turn also references via its__proto__
property again to the Object.prototype. Thus, repeat, Foo.prototype is just an explicit property of Foo which refers to the prototype of b and c objects.
var b = new Foo(20);
var c = new Foo(30);
What are the differences between __proto__
and prototype
properties?
up vote23down vote
|
Prototype VS. __proto__ VS. [[Prototype]]When creating a function, a property object called prototype is being created automatically (you didn‘t create it yourself) and is being attached to the function object (the Example:
If you will create a new object out of
The private linkage to that function‘s object called [[Prototype]] . Many browsers are providing us with a public linkage instead that called __proto__ !
To be more specific,
It is worth noting that starting of
NOTE: this answer doesn‘t intend to cover the whole process of creating new objects or new constructors, but to help better understand what is __proto__ , prototype and [[Prototype]] and how it works. |
再说javascript 的__proto__ 和prototype 属性