javascript中的原型,原型链以及闭包(6)---------继承

既然java等各类语言都有继承,那我们javascript是否也有继承,答案是—是的

        function Foo () {}
		var foo = new Foo();
		foo.a = 1;
		Foo.prototype.a = 100;
		Foo.prototype.b = 200;
		Foo.prototype.c = function() {
			return 300;
		}
		console.log(foo.a);//1
		console.log(foo.b);//200
		console.log(foo.c());//300

在这个例子中,细心的朋友是不是发现foo.a并不是我们后面更改Foo.prototype.a = 100;,所以foo.aFoo.prototype.a是两个不同的储存变量;对于foo.a其为具体对象的基本属性【间接理解为子类】,Foo.prototype.a其为Foo.prototype的基本属性【间接理解为父类】。
网络配图:
在这里插入图片描述
console.log(foo.a);时,搜索引擎会先检索本对象是否存在此属性,若没有则沿着原型链__prototype__寻找,找到或则undefined。这就是继承。

这也是为什莫我们创建空的对象时,其还有可调用属性函数
代码:

var object = new Object();
object.

在这里插入图片描述

菜鸟爬行中…

猜你喜欢

转载自blog.csdn.net/h1234561234561/article/details/87818461