如何理解Javascript中類和對(duì)象這兩個(gè)概念?
準(zhǔn)確來(lái)說(shuō)的話,在JavaScript中是沒(méi)有類的概念,只有對(duì)象的概念,也就是說(shuō)JavaScript把一切東西看成了對(duì)象。之所以往往會(huì)提到類的概念,我想主要原因是受其他的面向?qū)ο笳Z(yǔ)言的影響,比如說(shuō)Java。以Java和JavaScript語(yǔ)言為例,可以對(duì)比分析下:
Java 語(yǔ)言:
class Person{
}
創(chuàng)建對(duì)象:Person person = new Person();
JavaScript語(yǔ)言:
function Person(){
}
創(chuàng)建對(duì)象:var person = new Person();
所以類比起來(lái),往往在JavaScript中就說(shuō)Person也是一個(gè)類了,實(shí)際上這個(gè)Person是一個(gè)構(gòu)造函數(shù),是一個(gè)函數(shù)對(duì)象。是Function類型下面的一個(gè)實(shí)例對(duì)象。