Javascript跟Java是完全不同的語言,如果硬拉關(guān)系的話,算是有半毛錢的關(guān)系。1995年網(wǎng)景公司最先開發(fā)并搭載在NetscapeNavigator2.0瀏覽器上。最初的名字叫LiveScript。1996年微軟的IE3.0上搭載該語言,當時Sun公司開發(fā)的Java很火,于是借了個光改名為Javascript。根據(jù)Stackover的統(tǒng)計,全世界有超過85%的程序員在使用JS,是最流行的編程語言。特別是谷歌在瀏覽器上開發(fā)了V8引擎之后,JS的執(zhí)行速度大幅提升,2009年Node.js出場,開啟了用JS做Web后臺的開發(fā)的時代。不過,后來推出的Javascript2.0和Javascript.Net都不成功,Web后臺被Python等語言搶了戲。這里就說幾個用JS做Web開發(fā)的場景吧。
頁面小程序
JavaScript隨網(wǎng)頁數(shù)據(jù)一同下載到瀏覽器上,下載完成之后,就可以被執(zhí)行,控制網(wǎng)頁接下來的動作。網(wǎng)頁的很多事件都可以觸發(fā)JS,比如,onLoad,onClick,onBlur等等。這些特征使JS可以用來做輸入內(nèi)容的檢查,還可以對網(wǎng)頁做很多動態(tài)裝飾。用JS開發(fā)的頁面小程序流行了一段時間。后來,隨著Flash小游戲的興起,JS的熱度才降低了一些。
動態(tài)網(wǎng)頁
最初,JS主要用于網(wǎng)頁裝飾,2005年可異步加載網(wǎng)頁數(shù)據(jù)的技術(shù)Ajax被提了出來,網(wǎng)頁不必再服務器上做好,可由JS分步下載數(shù)據(jù),在客戶端動態(tài)生成網(wǎng)頁的技術(shù)迅速流行起來。JQuery也被開發(fā)了出來。谷歌不失時機地在Chromes瀏覽器上搭載了JS的V8引擎,使得JS的執(zhí)行速度大大提高。在谷歌的大力推動之下,JS又火了一把。
Web后端
2009年,JS的執(zhí)行環(huán)境Node.js被開發(fā)出來,JS終于可以脫離瀏覽器獨立在服務器上運行了。得益于V8的良好性能,Node.js解決了1萬次以上的并發(fā)(C10K)所造成的網(wǎng)站性能惡化的問題,并因此受到了阿里,優(yōu)布等一些巨頭的青睞。盡管如此,可能是受到軟件生態(tài)圈的影響,Node.js一直不溫不火。
綜上所訴,Javascript既可用于開發(fā)Web前端,也可用于開發(fā)Web后端。盡管作為Web后端的開發(fā)語言,它并非是最受歡迎的,但是,Javascript一直穩(wěn)坐Web前端最受歡迎的編程語言的位置,幾乎被所有瀏覽器奉為標準,這一點還沒有第二種Web前端的編程語言能與之抗衡。