用C++和JS的類(lèi)來(lái)類(lèi)比如下:
C++ JS
類(lèi) 一個(gè)function(也是一個(gè)對(duì)象,即名稱(chēng)-屬性集合),因?yàn)樗鼘?shí)際定義了一個(gè)類(lèi),所以又叫constructor
成員 在constructor中用this.xxx賦值的一般屬性
靜態(tài)成員 直接function的名字"."賦值
多重繼承 constructor.prototype = new SuperClass (),這樣新定義的constructor的prototype繼承了SuperClass的prototype,但要用constructor.prototype.constructor = constructor,把構(gòu)造函數(shù)賦成新的constructor
所以說(shuō)白了,JS的類(lèi)就是一個(gè)函數(shù)對(duì)象。JS自動(dòng)為它創(chuàng)建了屬性prototype,可以被new出來(lái)的對(duì)象繼承。