{eval=Array;=+count(Array);}
js的一個(gè)重要因素,就是為了實(shí)現(xiàn)html標(biāo)簽的動(dòng)態(tài)表現(xiàn)。所以,它不能直接去運(yùn)行函數(shù)。而是根據(jù)情況去運(yùn)行。
php則是直接運(yùn)行函數(shù),所以每一次都要對現(xiàn)有函數(shù)進(jìn)行初始化,然后再運(yùn)行。
所以,js會(huì)相當(dāng)自由,函數(shù)是安全的。缺點(diǎn)就是運(yùn)行前要進(jìn)行堆棧操作。這樣速度慢,占內(nèi)存。為了提高速度,有一套復(fù)雜的規(guī)則。
作為編程語言來說,Javascript和PHP比較類似,最初的時(shí)候都不一個(gè)非常嚴(yán)謹(jǐn)?shù)木幊陶Z言,例如變量定義等。
Javascript最初作為實(shí)現(xiàn)網(wǎng)頁交互為主的腳本語言,在1995年這個(gè)互聯(lián)網(wǎng)原始時(shí)代,由Netscape在最早的瀏覽器Netscape Navigator下實(shí)現(xiàn)的腳本語言,為了給網(wǎng)頁帶來動(dòng)態(tài)功能。因?yàn)榛ヂ?lián)網(wǎng)的快速發(fā)展以及Web應(yīng)用的普及,JS逐步成為了一個(gè)非常熱門的編程語言,而且一直在不斷進(jìn)步和提升,例如增加了異步通訊功能帶了了AJAX技術(shù)的發(fā)展,以及之后WebApp前后端分離的開發(fā)模式等等?,F(xiàn)在也出現(xiàn)了很多基于JS的開源框架來彌補(bǔ)很多JS原本的不足。
PHP也是一種腳本語言,與JS的區(qū)別是,JS是在瀏覽器內(nèi)編譯執(zhí)行,而PHP是在服務(wù)器端執(zhí)行的。不過作為一個(gè)腳本語言,PHP有著和JS類似的不足,例如變量定義的不明確、很多語法結(jié)構(gòu)參考了Perl、C、C++和Java語言比較混亂。不過,因?yàn)镻HP是個(gè)開源語言,所以技術(shù)社區(qū)的支持還是非常豐富的,也就是為什么PHP現(xiàn)在算是一款非常熱門的Web后端編程語言。
總的來說,Javascript和PHP設(shè)計(jì)上非常類似,沒有明顯的好壞之分,而且因?yàn)楝F(xiàn)在前后端開發(fā)的分離,Javascript的前端和PHP的后端還都是由自己領(lǐng)域的明顯優(yōu)勢的。
個(gè)人認(rèn)為JavaScript的設(shè)計(jì)更差一點(diǎn),這是因?yàn)闅v史問題,畢竟發(fā)展很多年了,有很多的規(guī)范加入,導(dǎo)致語法書不嚴(yán)謹(jǐn),各種各樣的寫法都支持,尤其是初級程序員使用JavaScript時(shí)會(huì)出現(xiàn)更多的危險(xiǎn),但后來有了typescript可以像編寫后端那樣寫前段代碼以后,感覺還好一些。
5
回答3
回答0
回答10
回答0
回答5
回答5
回答4
回答6
回答10
回答