美文网首页
谈谈js原型和原型链

谈谈js原型和原型链

作者: zhangjianli | 来源:发表于2017-04-11 20:42 被阅读0次

谈到原型和原型链,相信很多人都会想到js类与继承,但由于js是基于对象的语言,并不是面向对象的,所以它本身并没有类的概念,当然,也没有继承的概念,但是我们通常通过对象和原型的方式来实现类似类继承机制

  • 首先我们来说一下类,js 中通常利用函数名首字母大写的函数来表示类
    如:
function Parent(){}

parent可表示一个类,想要实例化它,直接

var p1=new Parent();

就可以

  • 原型:在js中,每定义一个对象(函数)的时候,对象中都会包含一些预定义的属性,其中函数对象的一个属性就是原型对象prototype,它通常是用来继承的
  • 原型链:类继承时顺着它向上找,比如说:先找自己构造函数中的,如果没有,找它的原型中的,然后是它父类的构造函数中的,它父类的原型中的,一直向上找,出口为object.prototype.proto=null;
  • js中主要通过三个语句来实现继承,分别如下,例如child 想继承parent:
class Parent(name){
    this.name=name;
    ths.hobby=['sing','dance','shopping'];
}
Parent.prototype.sayHello=function(){
    console.log('hello');
}//属性写在构造函数中,方法写在prototype下
class Child(){
Parent.call(this);//用于继承属性,解决属性为引用类型时一个改变全改变问题
}
Child.prototype= new Parent();//用于继承,继承其所有
Child.prototype.constructor = Child;**//将因为上一步将.costructor修改的属性改为正确值

相关文章

  • 谈谈js原型和原型链

    谈到原型和原型链,相信很多人都会想到js类与继承,但由于js是基于对象的语言,并不是面向对象的,所以它本身并没有类...

  • 廖雪峰JS小记

    (function(){})() 原型,原型链 浅谈Js原型的理解JS 原型与原型链终极详解 对象 对象:一种无序...

  • JS的__proto__和prototype

    最近在回顾JS的原型和原型链的知识,熟悉JS的同学都知道JS的继承是靠原型链实现的,那跟原型链相关的属性__pro...

  • 1.原型和原型链-作用域和作用域链

    一、请谈谈原型和原型链 原型js中每个函数都有一个属性,prototype,这个属性的属性值是一个对象,这个对象被...

  • JS原型理解

    原型链是整个JS面向对象的基础在理解原型链之前先来谈谈JS创建对象的几种方式 可以看到输出了4个对象,a1和a2看...

  • Javascript(三)之原型继承理解

    进阶路线 3 原型继承 3.1 优秀文章 最详尽的 JS 原型与原型链终极详解 一 最详尽的 JS 原型与原型链终...

  • 2022前端高频面试题

    JS相关 1.原型和原型链是什么 原型和原型链都是来源于对象而服务于对象的概念js中引用类型都是对象,对象就是属性...

  • 关于JS中的原型和原型链

    目录 关于js 对象和原型 原型链 基于原型链的继承 参考资料ECMAScript 6 入门JavaScript原...

  • 深入javascript之原型和原型链

    原型和原型链是js中的难点也是重点,明白了原型和原型链会让我们在后面不管是学习还是工作都会更加高效,并且原型和原型...

  • JavaScript原型对象与原型链

    一、前言 原型和原型链是 JavaScript中不可避免需要碰到的知识点,在刚开始学习 JS 时,原型和原型链都是...

网友评论

      本文标题:谈谈js原型和原型链

      本文链接:https://www.haomeiwen.com/subject/eowuattx.html