摘要:中,生成實(shí)例對象通過構(gòu)造函數(shù)來生成則引用了的概念,使得更接近等語言,更加直觀。要注意的是,中聲明新的實(shí)例必須要用聲明。其中為類的默認(rèn)方法,通過的調(diào)用可以執(zhí)行這個(gè)方法。這事,新的實(shí)例當(dāng)前就會(huì)報(bào)錯(cuò)。
es5中,生成實(shí)例對象通過構(gòu)造函數(shù)來生成:
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可以理解為一個(gè)語法糖,只是讓這種寫法更加直觀。
要注意的是,es6中聲明新的實(shí)例必須要用new聲明。
其中constructor為類的默認(rèn)方法,通過new的調(diào)用可以執(zhí)行這個(gè)方法。每個(gè)類都必須要有這個(gè)方法,如果沒有顯示定義,則一個(gè)空的constructor被添加到類里面。constructor方法默認(rèn)返回實(shí)例對象,即this。也可以返回其他對象。這事,新的實(shí)例instanceof當(dāng)前class就會(huì)報(bào)錯(cuò)。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/97036.html
摘要:使用類創(chuàng)建實(shí)例對象也是直接對類使用命令,跟中構(gòu)造函數(shù)的用法一致。中沒有構(gòu)造函數(shù),作為構(gòu)造函數(shù)的語法糖,同時(shí)有屬性和屬性,因此同時(shí)存在兩條繼承鏈。子類的屬性,表示構(gòu)造函數(shù)的繼承,總是指向父類。 1 Class in ES6 ES6提出了類(Class)的概念,讓對象的原型的寫法更像面向?qū)ο笳Z言寫法。 ES6中通過class定義對象,默認(rèn)具有constructor方法和自定義方法,但是包含...
摘要:使用類創(chuàng)建實(shí)例對象也是直接對類使用命令,跟中構(gòu)造函數(shù)的用法一致。中沒有構(gòu)造函數(shù),作為構(gòu)造函數(shù)的語法糖,同時(shí)有屬性和屬性,因此同時(shí)存在兩條繼承鏈。子類的屬性,表示構(gòu)造函數(shù)的繼承,總是指向父類。 1 Class in ES6 ES6提出了類(Class)的概念,讓對象的原型的寫法更像面向?qū)ο笳Z言寫法。 ES6中通過class定義對象,默認(rèn)具有constructor方法和自定義方法,但是包含...
摘要:中通過關(guān)鍵字,定義類經(jīng)過轉(zhuǎn)碼之后可以看到類的底層還是通過構(gòu)造函數(shù)去創(chuàng)建的。在中,構(gòu)造函數(shù)是可以直接運(yùn)行的,比如。如果你有靜態(tài)屬性,會(huì)直接添加到構(gòu)造函數(shù)上。不是很好理解,可以通過下面的方式理解是一個(gè)實(shí)例,是構(gòu)造方法的原型。 ES6中通過class關(guān)鍵字,定義類 class Parent { constructor(name,age){ this.name = na...
摘要:聲明和定義聲明一個(gè)構(gòu)造函數(shù)聲明一個(gè)類以上兩者相比之下,很可以看出,類函數(shù)比構(gòu)造函數(shù),代碼量更少,并且結(jié)構(gòu)層次更加簡潔明了。類主要內(nèi)容是構(gòu)造函數(shù)靜態(tài)方法繼承。構(gòu)造函數(shù)一個(gè)類里,必有一個(gè)函數(shù),默認(rèn)。 ES6 Class類 ES6中class是基于原型的繼承的語法糖,提供更加清晰的語法來創(chuàng)建對象和原型。 聲明和定義 es5 聲明一個(gè)構(gòu)造函數(shù): function Student(name, a...
摘要:值得注意的是與完全不同的是不能通過父類參數(shù)來實(shí)現(xiàn)因?yàn)樽宇愒跊]有調(diào)用父類的之前實(shí)例是沒有的。 使用class class Miaov{ constructor (a,b){ //構(gòu)造對象的時(shí)候需要傳遞的對象 this.a=a; this.b=b; return this; //注意這里的ret...
閱讀 2239·2021-11-22 09:34
閱讀 1349·2021-10-11 10:59
閱讀 4449·2021-09-22 15:56
閱讀 3311·2021-09-22 15:08
閱讀 3415·2019-08-30 14:01
閱讀 787·2019-08-30 11:16
閱讀 1139·2019-08-26 13:51
閱讀 2920·2019-08-26 13:43