资讯专栏INFORMATION COLUMN

es6 class以及构造函数(constructor)

miracledan / 3431人阅读

摘要:中,生成实例对象通过构造函数来生成则引用了的概念,使得更接近等语言,更加直观。要注意的是,中声明新的实例必须要用声明。其中为类的默认方法,通过的调用可以执行这个方法。这事,新的实例当前就会报错。

es5中,生成实例对象通过构造函数来生成:

function Fun(a,b) {
    this.a = a;
    this.b = b;
}
Fun.prototype.showA = function () {
    console.log(this.a)
}
var fun = new Fun(1,2);
fun.showA();//1

es6则引用了class的概念,使得更接近java、c++等语言,更加直观。如:

class Fun {
    constructor(a,b){
        this.a = a;
        this.b = b;
    }
    showA() {
        console.log(this.a);
    }
}
var fun = new Fun(1,2);
fun.showA();//1

这两种写法是一样的,在es6中,class可以理解为一个语法糖,只是让这种写法更加直观。
要注意的是,es6中声明新的实例必须要用new声明。
其中constructor为类的默认方法,通过new的调用可以执行这个方法。每个类都必须要有这个方法,如果没有显示定义,则一个空的constructor被添加到类里面。constructor方法默认返回实例对象,即this。也可以返回其他对象。这事,新的实例instanceof当前class就会报错。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/97036.html

相关文章

  • ES6Class创建对象与继承实现

    摘要:使用类创建实例对象也是直接对类使用命令,跟中构造函数的用法一致。中没有构造函数,作为构造函数的语法糖,同时有属性和属性,因此同时存在两条继承链。子类的属性,表示构造函数的继承,总是指向父类。 1 Class in ES6 ES6提出了类(Class)的概念,让对象的原型的写法更像面向对象语言写法。 ES6中通过class定义对象,默认具有constructor方法和自定义方法,但是包含...

    zhou_you 评论0 收藏0
  • ES6Class创建对象与继承实现

    摘要:使用类创建实例对象也是直接对类使用命令,跟中构造函数的用法一致。中没有构造函数,作为构造函数的语法糖,同时有属性和属性,因此同时存在两条继承链。子类的属性,表示构造函数的继承,总是指向父类。 1 Class in ES6 ES6提出了类(Class)的概念,让对象的原型的写法更像面向对象语言写法。 ES6中通过class定义对象,默认具有constructor方法和自定义方法,但是包含...

    wind5o 评论0 收藏0
  • ES6以及继承的实现原理

    摘要:中通过关键字,定义类经过转码之后可以看到类的底层还是通过构造函数去创建的。在中,构造函数是可以直接运行的,比如。如果你有静态属性,会直接添加到构造函数上。不是很好理解,可以通过下面的方式理解是一个实例,是构造方法的原型。 ES6中通过class关键字,定义类 class Parent { constructor(name,age){ this.name = na...

    Warren 评论0 收藏0
  • ES6 Class

    摘要:声明和定义声明一个构造函数声明一个类以上两者相比之下,很可以看出,类函数比构造函数,代码量更少,并且结构层次更加简洁明了。类主要内容是构造函数静态方法继承。构造函数一个类里,必有一个函数,默认。 ES6 Class类 ES6中class是基于原型的继承的语法糖,提供更加清晰的语法来创建对象和原型。 声明和定义 es5 声明一个构造函数: function Student(name, a...

    trigkit4 评论0 收藏0
  • es6--class以及类的继承

    摘要:值得注意的是与完全不同的是不能通过父类参数来实现因为子类在没有调用父类的之前实例是没有的。 使用class class Miaov{ constructor (a,b){ //构造对象的时候需要传递的对象 this.a=a; this.b=b; return this; //注意这里的ret...

    huangjinnan 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<