javascript
002_JavaScript的历史
1. 為了發(fā)揮JavaScript的全部潛力, 了解它的本質(zhì)、歷史及局限性是十分重要的。
2. Nombas和ScriptEase
2.1. 大概在1992年, 一家稱作Nombas的公司開(kāi)發(fā)了一種叫做C減減(C-minus-minus, 簡(jiǎn)稱Cmm)的嵌入式腳本語(yǔ)言。Cmm背后的理念很簡(jiǎn)單: 一個(gè)足夠強(qiáng)大可以替代宏操作(macro)的腳本語(yǔ)言, 同時(shí)保持與C(和C ++)足夠的相似性, 以便開(kāi)發(fā)人員能很快學(xué)會(huì)。這個(gè)腳本語(yǔ)言捆綁在一個(gè)叫做CEnvi的共享軟件中, 它首次向開(kāi)發(fā)人員展示了這種語(yǔ)言的威力。
2.2. Nombas最終把Cmm的名字改成了ScriptEase, 原因是后面的部分(mm)聽(tīng)起來(lái)過(guò)于消極, 同時(shí)字母C"令人害怕"。
3. Netscape發(fā)明了JavaScript
3.1. 當(dāng)Netscape Navigator嶄露頭角時(shí), Nombas開(kāi)發(fā)了一個(gè)可以嵌入網(wǎng)頁(yè)中的CEnvi的版本。這些早期的試驗(yàn)被稱為Espresso Page(濃咖啡般的頁(yè)面), 它們代表了第一個(gè)在萬(wàn)維網(wǎng)上使用的客戶端語(yǔ)言。而Nombas 絲毫沒(méi)有料到它的理念將會(huì)成為萬(wàn)維網(wǎng)的一塊重要基石。
3.2. 當(dāng)網(wǎng)上沖浪越來(lái)越流行時(shí), 對(duì)于開(kāi)發(fā)客戶端腳本的需求也逐漸增大。此時(shí), 大部分因特網(wǎng)用戶還僅僅通過(guò)28.8kbit/s 的調(diào)制解調(diào)器連接到網(wǎng)絡(luò), 即便這時(shí)網(wǎng)頁(yè)已經(jīng)不斷地變得更大和更復(fù)雜。而更加加劇用戶痛苦的是, 僅僅為了簡(jiǎn)單的表單有效性驗(yàn)證, 就要與服務(wù)器進(jìn)行多次地往返交互。設(shè)想一下, 用戶填完一個(gè)表單, 點(diǎn)擊提交按鈕, 等待了30秒的處理后, 看到的卻是一條告訴你忘記填寫一個(gè)必要的字段。
3.3. 那時(shí)正處于技術(shù)革新最前沿的Netscape, 開(kāi)始認(rèn)真考慮開(kāi)發(fā)一種客戶端腳本語(yǔ)言來(lái)進(jìn)行簡(jiǎn)單的問(wèn)題處理。
3.4. 當(dāng)時(shí)工作于Netscape的Brendan Eich, 開(kāi)始著手為即將在1995年發(fā)行的Netscape Navigator 2.0開(kāi)發(fā)一個(gè)稱之為L(zhǎng)iveScript的腳本語(yǔ)言, 當(dāng)時(shí)的目的是在瀏覽器和服務(wù)器(本來(lái)要叫它LiveWire)端使用它。Netscape與 Sun及時(shí)完成LiveScript實(shí)現(xiàn)。
3.5. 就在Netscape Navigator 2.0即將正式發(fā)布前, Netscape將其更名為JavaScript, 目的是為了利用Java這個(gè)因特網(wǎng)時(shí)髦詞匯。Netscape的賭注最終得到回報(bào), JavaScript從此變成了因特網(wǎng)的必備組件。
4. 三足鼎立
4.1. 因?yàn)镴avaScript 1.0如此成功, Netscape在Netscape Navigator 3.0中發(fā)布了1.1版。恰巧那個(gè)時(shí)候, 微軟決定進(jìn)軍瀏覽器, 發(fā)布了IE 3.0并搭載了一個(gè)JavaScript的克隆版, 叫做JScript(這樣命名是為了避免與 Netscape潛在的許可糾紛)。
4.2. 在微軟進(jìn)入后, 有3種不同的JavaScript版本同時(shí)存在: Netscape Navigator 3.0中的JavaScript、IE中的JScript以及CEnvi中的ScriptEase。與C和其他編程語(yǔ)言不同的是, JavaScript 并沒(méi)有一個(gè)標(biāo)準(zhǔn)來(lái)統(tǒng)一其語(yǔ)法或特性, 而這3種不同的版本恰恰突出了這個(gè)問(wèn)題。隨著業(yè)界擔(dān)心的增加, 這個(gè)語(yǔ)言的標(biāo)準(zhǔn)化顯然已經(jīng)勢(shì)在必行。
5. 標(biāo)準(zhǔn)化
5.1. 1997年, JavaScript 1.1作為一個(gè)草案提交給歐洲計(jì)算機(jī)制造商協(xié)會(huì)(ECMA)。第39技術(shù)委員會(huì)(TC39)被委派來(lái)"標(biāo)準(zhǔn)化一個(gè)通用、跨平臺(tái)、中立于廠商的腳本語(yǔ)言的語(yǔ)法和語(yǔ)義"。由來(lái)自Netscape、Sun、微軟、Borland 和其他一些對(duì)腳本編程感興趣的公司的程序員組成的TC39錘煉出了ECMA-262, 該標(biāo)準(zhǔn)定義了名為ECMAScript 的全新腳本語(yǔ)言。
5.2. 在接下來(lái)的幾年里, 國(guó)際標(biāo)準(zhǔn)化組織及國(guó)際電工委員會(huì)(ISO/IEC)也采納ECMAScript作為標(biāo)準(zhǔn)(ISO/IEC-16262)。從此, Web瀏覽器就開(kāi)始努力將ECMAScript作為JavaScript實(shí)現(xiàn)的基礎(chǔ)。
總結(jié)
以上是生活随笔為你收集整理的002_JavaScript的历史的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 001_JavaScript简介
- 下一篇: 005_JavaScript使用