1995年,JavaScript作為網景瀏覽器的一部分首次發布,起初並不叫JavaScript,而是叫LiveScript,但是因為當時Java正火,也算是為了搭上java的順風車,於是改成了JavaScript,然而二者一點關系也沒有。
1996年的時候,網景將JavaScript提交給了ECMA International,即歐洲計算機制造商協會,進行了標准化,並最終確定出來新的語言標准,即ECMAScript,此后,ECMAScript成為了JavaScript的實現基礎,與DOM、BOM共同組成了JavaScript。
ECMAScript5,即ES5,是ECMAScript的第五次修訂,於2009年完成標准化,現在的瀏覽器已經相當於完全實現了這個標准。
ECMAScript6,即ES6,也稱ES2015,是ECMAScript的第六次修訂,於2015年完成,並且運用的范圍逐漸開始擴大,因為其相對於ES5更加簡潔,提高了開發速率,開發者也都在陸續進行使用,天貓已經開始將ES6投入了實際項目的開發之中。
下面是一些ES6中的新的特點:
- ES6中的let命令,聲明變量,用法和var差不多,但是let是為JavaScript新增了塊級作用域,ES5中是沒有塊級作用域的,並且var有變量提升的概念,但是在let中,使用的變量一定要進行聲明;
- ES6中變量的結構賦值,比如:var [a,b,c] = [0,1,2];
- ES6中不再像ES5一樣使用原型鏈實現繼承,而是引入Class這個概念,聽起來和Java中的面向對象編程的語法有些像,但是二者是不一樣的。
- ES6中的函數定義也不再使用關鍵字function,而是利用了=>來進行定義;
- ES6中可以設置默認函數參數,如function A(x,y=9){};
- ......
總之,ES6還有許多新的標准出現,但是像jQuery一樣,對js的一些內容好像進行了封裝一樣,所以即使ES6將會更火,ES5中的標准和一些基礎還是需要學習,標准的不斷更新也是因為開發過程中,開發者們逐漸追求簡單快捷的開發,就像是框架的興起,同樣是為了解決開發速率的遲緩,但是在基礎的學習中,掌握原理是十分必要的,只有基礎掌握的足夠扎實,框架用起來也才能更加順手。