javascript的构造函数和实例对象prototype和__proto__的区别,原型对象及构造器的理解
Posted 南歌子
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript的构造函数和实例对象prototype和__proto__的区别,原型对象及构造器的理解相关的知识,希望对你有一定的参考价值。
一、前言
我们先通过代码来分别打印出实例对象、构造函数,以及修改了原型对象的构造函数,通过对比内部结构来看看他们之间的区别。
//定义构造函数 function Person(name, age){ this.name = name; this.age = age; this.play = function(){ console.log(‘玩好玩的‘) } } //实例化对象,并初始化赋值 var per = new Person(‘kitty‘, ‘3‘); //打印实例对象 console.dir(per); //打印构造函数 console.dir(Person)
我们创建的每一个函数都会有一个原型(prototype)属性,这个属性是一个指针,指向函数的原型(prototype)对象。使用原型对象可以让构造函数的实例对象共享原型对象包含的属性和方法,而不会像工厂模式或者构造函数模式那样,方法本应该是可以是通用的,可是每一个创建的对象实例都要各自复制一份
以上是关于javascript的构造函数和实例对象prototype和__proto__的区别,原型对象及构造器的理解的主要内容,如果未能解决你的问题,请参考以下文章
js高级构造函数,实例对象和原型对象——prototype__proto__和constructor构造器