js原型链是什么


本文摘自PHP中文网,作者little bottle,侵删。

原型链是一种机制,指的是JavaScript每个对象包括原型对象都有一个内置的[[proto]]属性指向创建它的函数对象的原型对象,即prototype属性。

作用:原型链的存在,主要是为了实现对象的继承。

关于原型链的几个概念:

1、函数对象

在JavaScript中,函数即对象。

2、原型对象

当定义一个函数对象的时候,会包含一个预定义的属性,叫prototype,这就属性称之为原型对象。

1

2

3

//函数对象

function F(){};

console.log(F.prototype)

6a.jpg

3、__proto__

JavaScript在创建对象的时候,都会有一个[[proto]]的内置属性,用于指向创建它的函数对象的prototype。原型对象也有[[proto]]属性。因此在不断的指向中,形成了原型链。

举个例子来说,我们将对象F的原型对象修改一下,就可以清楚看到上述的关系

1

2

3

4

5

6

7

//函数对象

function F(){};

F.prototype = {

    hello : function(){}

};

var f = new F();

console.log(f.__proto__)

6b.jpg

4、new

当使用new去调用构造函数时,相当于执行了

1

2

3

var o = {};

o.__proto__ = F.prototype;

F.call(o);

因此,在原型链的实现上,new起到了很关键的作用。

阅读剩余部分

相关阅读 >>

javascript如何设置全局变量

javascript 开发者常用的 10 个技巧

akjs是个什么软件

js怎么获取网站的url

javascript实现鼠标滚轮控制页面图片切换

js 中 onchange 事件如何使用?

js proxy 的优势以及使用场景

如何利用js拼接html字符串

怎么获取json的key

怎么给html添加js

更多相关阅读请进入《js》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...

    暂无评论...