Javascript最初是作爲一種將客戶端表單驗證和小動態用戶交互添加到網頁的方式開始的。然而,現代Javascript是一種非常強大的語言(有很多煩惱),可以在瀏覽器或服務器上運行(使用諸如Node.js之類的語言)。現代瀏覽器提供了許多隻適用於Javascript的API(除非Web應用程序,畫布,Web GL,Web Audio API,XMLHTTPRequest(即AJAX),定時器,事件等等)支持另一種類似Dart的語言。
瀏覽器的舊概念是能夠下載和呈現靜態HTML標記文檔的程序。現在將瀏覽器視爲主要用於執行Web應用程序的操作系統+庫+ API是更有用的。換句話說,現代Web瀏覽器的主要目的是執行Javascript併爲Javascript提供API。 HTML的主要用途是指定要加載的初始JavaScript文件以啓動Web應用程序。 HTML和CSS也可以用來定義DOM樹的初始狀態(JavaScript API的可見部分)。但是,您可以使用HTML和CSS靜態指定所有內容,也可以使用Javascript動態生成。
在這種情況下,WebSockets是瀏覽器中的一個API,它使Web應用程序(即瀏覽器中運行的Javascript程序)能夠向WebSocket服務器建立低延遲的雙向通信通道。
更新:
爲什麼他們不只是說 「的WebSockets是在Javascript版本X.X.X可用」?
- JavaScript不僅僅適用於網絡(例如Node.js),這些API不僅適用於Javascript。例如,如果您的Chrome版本啓用了Dart,則可以從Dart獲得這些相同的API。腳本標籤允許使用其他語言,以便將來的瀏覽器可以運行其他可以訪問這些API的語言。
- Javascript是由ECMA定義的語言,WebSockets,Web Workers等是由W3C定義的瀏覽器API作爲HTML5的一部分。瀏覽器版本確定哪些Web API可用以及Javascript的版本。您可能使用支持新API的舊版Javascript的瀏覽器,反之亦然。
爲什麼javascript?什麼時候是最後一次以純HTML格式編寫'for()'循環?什麼時候你最後一次可以定義一個數組並在HTML中對該數組執行一些push/pop操作? –
我認爲這些處理使用服務器端語言,然後轉換爲純HTML? –
沒有。確切地說,客戶端瀏覽器EVER如何從服務器請求某些內容(除了用戶單擊鏈接或提交表單)WITHOUT JavaScript? –