一類(lèi)和函數(shù)
ES5中類(lèi)和函數(shù)定義方式差不多剪廉,
ES6中才出現(xiàn)了class
函數(shù)是一串邏輯的組合,
類(lèi)是除了封裝了邏輯之外朴肺,還有邏輯之間的關(guān)系窖剑。
調(diào)用類(lèi)中的函數(shù)不加括號(hào),會(huì)直接把函數(shù)返回戈稿。
默認(rèn)情況下西土,this等于window對(duì)象,當(dāng)函數(shù)作為類(lèi)的構(gòu)造函數(shù)或者作為類(lèi)當(dāng)中的函數(shù)運(yùn)行時(shí)鞍盗,this等于運(yùn)行函數(shù)類(lèi)的實(shí)例需了。
函數(shù)作為類(lèi)使用時(shí),在調(diào)用時(shí)需要使用new關(guān)鍵字般甲,而這個(gè)函數(shù)叫做構(gòu)造函數(shù)肋乍。
構(gòu)造函數(shù)的返回值只能為空或者object,當(dāng)返回為空(非object)時(shí)敷存,new關(guān)鍵字得到的是類(lèi)的實(shí)例墓造,當(dāng)返回object時(shí),new關(guān)鍵字得到的是該object历帚。
二類(lèi)的原型
prototype
通過(guò)原型可以擴(kuò)展類(lèi)的功能
三this和原型的區(qū)別
this和prototype的區(qū)別滔岳,this指向的是類(lèi)的實(shí)例杠娱,對(duì)類(lèi)實(shí)例的修改只影響該實(shí)例本身挽牢,而類(lèi)的prototype屬性,代表的是類(lèi)的定義摊求,對(duì)prototype的修改會(huì)影響所有該類(lèi)的定義禽拔。