卖逼视频免费看片|狼人就干网中文字慕|成人av影院导航|人妻少妇精品无码专区二区妖婧|亚洲丝袜视频玖玖|一区二区免费中文|日本高清无码一区|国产91无码小说|国产黄片子视频91sese日韩|免费高清无码成人网站入口

js算不算面向?qū)ο蟮恼Z言?

網(wǎng)友解答: 謝邀,js肯定算面向?qū)ο笳Z言。有句話說得好,“JavaScript里一切皆對象”。如果不確定,那我們首先明確下什么是面向?qū)ο?,有三個核心概念。一是一切事物皆為對象;二是對象具

網(wǎng)友解答:

謝邀,js肯定算面向?qū)ο笳Z言。有句話說得好,“JavaScript里一切皆對象”。如果不確定,那我們首先明確下什么是面向?qū)ο?,有三個核心概念。

一是一切事物皆為對象;

二是對象具有封裝和繼承特性;

三是對象之間使用消息通信,各自存在信息隱藏。

我嘗試通過以下幾個例子來看Js是否都滿足三個特性。

封裝

在一些靜態(tài)類型的語言如java中,本身語法就提供了這些功能。js當(dāng)中只能依靠變量的作用域來實現(xiàn)封裝的特性,并且只能模擬出public和private兩種特性。

繼承

雖然在es6中也有extend以及class,但其本質(zhì)仍實現(xiàn)仍是基于原型機制。雖然原型繼承方式寫法很多,但是理解原型鏈機制比較重要,關(guān)鍵其實就是理解prototype和__prototype__。

多態(tài)

多態(tài)其實就是把做的內(nèi)容和誰去做分開。因為js是動態(tài)語言,多態(tài)性本身就有。下面這個例子就說明了,一個動物能否實現(xiàn)叫聲,只取決于makeSound,而不針對某種類型的對象。


如果你對學(xué)習(xí)人工智能和科技新聞感興趣,可以訂閱我的酷米號,我會在這里發(fā)布所有與算法、機器學(xué)習(xí)以及深度學(xué)習(xí)有關(guān)的有趣文章。偶爾也回答有趣的問題,有問題可隨時在評論區(qū)回復(fù)和討論,看到即回。

(碼字不易,若文章對你幫助請點贊支持~)

網(wǎng)友解答:

我學(xué)js時間不長不短,還算湊合吧。剛開始聽到的是js是弱類型語言,不能面向?qū)ο缶幊獭?/p>

到后來接觸其他的編程語言之后有些明白了,面向?qū)ο蟛皇悄膫€語言所特有的屬性,而是一種思想,通俗些說就是把一個項目進行模塊兒化。面向?qū)ο蟮娜齻€特性,封裝,繼承,多態(tài),從這三個方面來看,js是屬于面向?qū)ο蟮木幊陶Z言范疇的。

但在js中的繼承并沒有其他語言中的那么繁瑣,諸如c++中的公有,私有,保護什么的,所以說js是嚴(yán)謹(jǐn)?shù)拿嫦驅(qū)ο蟮木幊陶Z言又感覺不太合適,但在項目開發(fā)中是可以采用面向?qū)ο蟮乃枷雭磉M行對js編程的。

還是那句話,面向?qū)ο蟛皇悄膫€語言所特有的屬性,而是一種編程的思想,與其說js是面向?qū)ο蟮木幊蹋蝗缯f是面向原型的編程語言。

當(dāng)然關(guān)于面向原型什么,感興趣可以看一下,其實沒啥用在開發(fā)中!

小生才疏學(xué)淺,有解釋不當(dāng)?shù)牡胤竭€請見諒,也可以私信評論互相學(xué)習(xí)。

標(biāo)簽: