這篇文章主要介紹“為什么Python像JavaScript”,在日常操作中,相信很多人在為什么Python像JavaScript問(wèn)題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”為什么Python像JavaScript”的疑惑有所幫助!接下來(lái),請(qǐng)跟著小編一起來(lái)學(xué)習(xí)吧!
創(chuàng)新互聯(lián)公司堅(jiān)信:善待客戶,將會(huì)成為終身客戶。我們能堅(jiān)持多年,是因?yàn)槲覀円恢笨芍档眯刨?lài)。我們從不忽悠初訪客戶,我們用心做好本職工作,不忘初心,方得始終。10多年網(wǎng)站建設(shè)經(jīng)驗(yàn)創(chuàng)新互聯(lián)公司是成都老牌網(wǎng)站營(yíng)銷(xiāo)服務(wù)商,為您提供成都網(wǎng)站制作、成都網(wǎng)站設(shè)計(jì)、網(wǎng)站設(shè)計(jì)、H5場(chǎng)景定制、網(wǎng)站制作、成都品牌網(wǎng)站建設(shè)、微信平臺(tái)小程序開(kāi)發(fā)服務(wù),給眾多知名企業(yè)提供過(guò)好品質(zhì)的建站服務(wù)。
原因是:1、Js運(yùn)算符與Python中的相似;2、Js數(shù)據(jù)類(lèi)型與Python中的相似;3、Js與Python的原生語(yǔ)法對(duì)迭代器和生成器的支持;4、Js中的Proxy和Reflection與Python中通過(guò)“__xxx__”重寫(xiě)運(yùn)算符。
本教程操作環(huán)境:windows7系統(tǒng)、javascript1.8.5版、Dell G3電腦。
首先,JavaScript本身就是一個(gè)借鑒了很多其它語(yǔ)言的雜糅體,JavaScript的創(chuàng)始人Brendan Eich曾戲稱(chēng)”它是C語(yǔ)言和Self語(yǔ)言一夜情的產(chǎn)物。“。其次,隨著現(xiàn)代編程語(yǔ)言的發(fā)展,趨同肯定是一個(gè)趨勢(shì),畢竟“完善的語(yǔ)言總是相似的,不完善的語(yǔ)言各有各的不完善?!?/p>
但是,應(yīng)該說(shuō)JavaScript與Python在實(shí)現(xiàn)機(jī)制上有本質(zhì)的不同,譬如前者是借鑒Self語(yǔ)言基于原型(Prototype)的,而后者是基于類(lèi)(Class)的。我想題主之所以覺(jué)得JavaScript正在變得越來(lái)越像Python,主要是感覺(jué)兩者都提供了許多相似的“語(yǔ)法糖”,比如:
(1)(JavaScript中的...運(yùn)算符) 與 (Python中的*和**運(yùn)算符)
(2)(JavaScript中的Set和Map數(shù)據(jù)類(lèi)型)與 (Python中的Set和Dictionary數(shù)據(jù)類(lèi)型)
(3)JavaScript與Python的原生語(yǔ)法對(duì)迭代器和生成器的支持
(4)(JavaScript中的Proxy和Reflection) 與 (Python中通過(guò)__xxx__重寫(xiě)運(yùn)算符)
等等諸如此類(lèi),特別是ES2015之后新增的一些語(yǔ)法特性,確實(shí)讓人感覺(jué)很多都借鑒自Python。但也可以說(shuō),一門(mén)成熟的、完善的腳本語(yǔ)言最終都會(huì)提供這些語(yǔ)言特性,不一定是誰(shuí)學(xué)誰(shuí),而可能是在開(kāi)發(fā)需求和開(kāi)發(fā)理念的推動(dòng)下自發(fā)的趨同,就像鳥(niǎo)類(lèi)和蝙蝠各自進(jìn)化出了翅膀——這在生物學(xué)上叫做趨同進(jìn)化。
再來(lái)說(shuō)既然“完善的語(yǔ)言總是相似的“,那為什么不統(tǒng)一成同一種語(yǔ)言的問(wèn)題。我覺(jué)得這跟語(yǔ)言生態(tài)有很大關(guān)系,一些語(yǔ)言在發(fā)展的過(guò)程中在某一領(lǐng)域積累了大量的第三方庫(kù)和問(wèn)題解決方案,漸漸出現(xiàn)馬太效應(yīng),使得在解決該領(lǐng)域的問(wèn)題時(shí)有的語(yǔ)言只需要引入庫(kù)函數(shù),有的語(yǔ)言則要連篇累牘地寫(xiě)很長(zhǎng)的代碼。
荒漠不是不可以變成綠洲,只是一件事的可行性不僅要考慮自然規(guī)律的可行性還要考慮經(jīng)濟(jì)成本的可行性。以前端為例,如果在前端使用Python,那很多前端庫(kù)要再寫(xiě)一遍、很多博客要再寫(xiě)一遍。去MDN看看JavaScript提供的前端API的數(shù)量、去CSDN看看相關(guān)博客的數(shù)量,就知道其工程之浩繁。雖然現(xiàn)在推出了WebAssembly,使得其它語(yǔ)言也可以在瀏覽器上運(yùn)行,但是依然要調(diào)用JavaScript的API。
自然演化出來(lái)的多元,看似混亂,卻往往好于人類(lèi)構(gòu)想出來(lái)的統(tǒng)一。
到此,關(guān)于“為什么Python像JavaScript”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)?lái)更多實(shí)用的文章!