1. 程式人生 > >01-Javascript簡介

01-Javascript簡介

開始 執行 ajax 手機 script 更強 w3c 假設 郵箱

Web前端有三層:

  • HTML:從語義的角度,描述頁面結構

  • CSS:從審美的角度,描述樣式(美化頁面)

  • JavaScript:從交互的角度,描述行為(提升用戶體驗)

JavaScript歷史背景介紹

技術分享圖片

布蘭登 • 艾奇(Brendan Eich,1961年~),1995年在網景公司,發明的JavaScript。

一開始JavaScript叫做LiveScript,但是由於當時Java這個語言特別火,所以為了傍大牌,就改名為JavaScript。如同“北大”和“北大青鳥”的關系。“北大青鳥”就是傍“北大”大牌。

同時期還有其他的網頁語言,比如VBScript、JScript等等,但是後來都被JavaScript打敗了,所以現在的瀏覽器中,只運行一種腳本語言就是JavaScript

JavaScript和ECMAScript的關系

ECMAScript是一種由Ecma國際(前身為歐洲計算機制造商協會,英文名稱是European Computer Manufacturers Association)制定的標準。

JavaScript是由公司開發而成的,問題是不便於其他的公司拓展和使用。所以歐洲的這個ECMA的組織,牽頭制定JavaScript的標準,取名為ECMAScript。

簡單來說,ECMAScript不是一門語言,而是一個標準

。符合這個標準的比較常見的有:JavaScript、Action Script(Flash中用的語言)。就是說,你JavaScript學完了,Flash中的程序也就輕而易舉了。

ECMAScript在2015年6月,發布了ECMAScript 6版本,語言的能力更強(也包含了很多新特性)。但是,瀏覽器的廠商不能那麽快去追上這個標準。

JavaScript的發展:蒸蒸日上

http://2004.sina.com.cn/

http://2008.sina.com.cn/

http://2012.sina.com.cn/

上面三個網站可以感受一下網頁技術的發展。

2003年之前,JavaScript被認為“牛皮鮮”,用來制作頁面上的廣告,彈窗、漂浮的廣告。什麽東西讓人煩,什麽東西就是JavaScript開發的。所以瀏覽器就推出了屏蔽廣告功能。

2004年,JavaScript命運開始改變,那一年,谷歌公司開始帶頭使用Ajax技術,Ajax技術就是JavaScript的一個應用。並且,那時候人們逐漸開始提升用戶體驗了。Ajax有一些應用場景。比如,當我們在百度搜索框搜文字時,輸入框下方的智能提示,可以通過Ajax實現。比如,當我們註冊網易郵箱時,能夠及時發現用戶名是否被占用,而不用調到另外一個頁面。

2007年喬布斯發布了第一款iPhone,這一年開始,用戶就多了上網的途徑,就是用移動設備上網。
JavaScript在移動頁面中,也是不可或缺的。並且這一年,互聯網開始標準化,按照W3C規則三層分離,JavaScript越來越被重視。

2010年,人們更加了解HTML5技術HTML5推出了一個東西叫做Canvas(畫布),工程師可以在Canvas上進行遊戲制作,利用的就是JavaScript。

2011年,Node.js誕生,使JavaScript能夠開發服務器程序了。

如今,WebApp已經非常流行,就是用網頁技術開發手機應用。手機系統有iOS、安卓。比如公司要開發一個“攜程網”App,就需要招聘三隊人馬,比如iOS工程師10人,安卓工程師10人,前端工程師10人。共30人,開發成本大;而且如果要改版,要改3個版本。現在,假設公司都用web技術,用html+css+javascript技術就可以開發App。也易於叠代(網頁一改變,所有的終端都變了)。

雖然目前WebApp在功能和性能上的體驗遠不如Native App,但是“WebApp慢慢取代Native App”很有可能是未來的趨勢。

JavaScript入門易學性

  • JavaScript對初學者比較友好。

  • JavaScript是有界面效果的(比如C語言只有白底黑字)。

  • JavaScript是弱變量類型的語言,變量只需要用var來聲明。而Java中變量的聲明,要根據變量的類型來定義。

比如Java中需要定義如下變量:

    int a;
    float a;
    double a;
    String a;
    boolean a;

而JavaScript中,只用定義一個變量:

   var a;
  • JavaScript不用關心其他的一些事情(比如內存的釋放、指針等),更關心自己的業務。

JavaScript是前臺語言

JavaScript是前臺語言,而不是後臺語言。

JavaScript運行在用戶的終端網頁上,而不是服務器上,所以我們稱為“前臺語言”。JavaScript就是一個簡單的制作頁面效果的語言,就是服務於頁面的交互效果、美化、絢麗、不能操作數據庫。

後臺語言是運行在服務器上的,比如PHP、ASP、JSP等等,這些語言都能夠操作數據庫,都能夠對數據庫進行“增刪改查”操作。Node.js除外。

JavaScript的組成

JavaScript基礎分為三個部分:

  • ECMAScript:JavaScript的語法標準。包括變量、表達式、運算符、函數、if語句、for語句等。

  • DOM:操作網頁上的元素的API。比如讓盒子移動、變色、輪播圖等。

  • BOM:操作瀏覽器部分功能的API。比如讓瀏覽器自動滾動。

PS:JS機械重復性的勞動幾乎為0,基本都是創造性的勞動。而不像HTML、CSS中margin、padding都是機械重復勞動。

JavaScript的特點

(1)簡單易用:可以使用任何文本編輯工具編寫,只需要瀏覽器就可以執行程序。

(2)解釋執行(解釋語言):事先不編譯、逐行執行、無需進行嚴格的變量聲明。

(3)基於對象:內置大量現成對象,編寫少量程序可以完成目標

01-Javascript簡介