JavaScript原型,原型链 ?

2023-05-28 0 1,048

JavaScript 常被叙述为一类如前所述蓝本的词汇——每一第一类保有两个蓝本第一类

当企图出访两个第一类的特性时,它更为重要在该第一类上追踪,还会追踪该第一类的蓝本,和该第一类的蓝本的蓝本,依序一层层向下搜寻,直至找到两个英文名字相匹配的特性或抵达蓝本链的结尾

精确蔡伯介,那些特性和方式表述在Object的内部结构器表达式(constructor functions)其内的prototype特性上,而非示例第一类这类

下面举个范例:

表达式能有特性。 每一表达式都有两个特定的特性叫做蓝本prototype

function doSomething(){} console.log( doSomething.prototype );

控制面板输入

{ constructor: ƒ doSomething(), __proto__: { constructor: ƒ Object(), hasOwnProperty: ƒ hasOwnProperty(), isPrototypeOf: ƒ isPrototypeOf(), propertyIsEnumerable: ƒ propertyIsEnumerable(), toLocaleString: ƒtoLocaleString(), toString: ƒ toString(), valueOf: ƒ valueOf() } }

下面那个第一类,是我们常说的蓝本第一类

蓝本第一类也可能将保有蓝本,并由此承继方式和特性,几层几层、依此类推。此种亲密关系常被称作蓝本链 (prototype chain),它说明了为什么两个第一类会保有表述在其它第一类中的特性和方式

在第一类示例和它的内部结构器之间建立两个链接(它是__proto__特性,是从内部结构表达式的prototype特性派生的),之后通过上溯蓝本链,在内部结构器中找出那些特性和方式

下面举个范例:

function Person(name) { this.name = name; this.age = 18; this.sayName = function() { console.log(this.name); } }// 第二步 创建示例 var person = new Person(person)

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务