JavaScript原型,原型链 ? 有什么特点?

JavaScript原型,原型链 ? 有什么特点?_第1张图片

一、原型

JavaScript 常被描述为一种基于原型的语言——每个对象拥有一个原型对象

当试图访问一个对象的属性时,它不仅仅在该对象上搜寻,还会搜寻该对象的原型,以及该对象的原型的原型,依次层层向上搜索,直到找到一个名字匹配的属性或到达原型链的末尾

准确地说,这些属性和方法定义在Object的构造器函数(constructor functions)之上的prototype属性上,而非实例对象本身

下面举个例子:

函数可以有属性。 每个函数都有一个特殊的属性叫作原型prototype

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

控制台输出

{
   
    constructor: ƒ doSomething(),
    __proto__: {
   
        constructor: ƒ Object()

你可能感兴趣的:(JavaScript系列,1024程序员节,javascript,前端)