摘要:通常一個完成的不僅僅包含了還包括了以及相關版本該版本在中使用?;谠秃瘮?shù)先行的語言使用基于原型的的繼承機制,函數(shù)是的第一等公民其他相關的語言特性編譯型語言把做好的源程序全部編譯成二進制代碼的可運行程序。
轉載請注明出處,創(chuàng)作不易,更多文章請戳 https://github.com/ZhengMaste...
前言:JavaScript誕生于1995年,它是一門腳本語言,起初的目的就是為了解決前端頁面的動態(tài)效果,以及表單輸入效驗操作之類的。JavaScript的是由一家名為網(wǎng)景公司開發(fā)的,但是1997年網(wǎng)景公司將它交給了歐洲計算機制造協(xié)會(ECMA),并在同年完成了ECMA—262,定義名為ECMAScript的新標準的腳本語言。JavaScript是JavaScript的規(guī)格,而JavaScript是ECMAScript的一種實現(xiàn)。(通常一個完成的JavaScript不僅僅包含了ECMAScript還包括了DOM以及BOM)
相關版本:
JavaScript 1.1 該版本在Netscape Navigator 3.0中使用。發(fā)布于1996年8月19日。 JavaScript 1.3 發(fā)布于1998年10月19日。符合ECMA-262第1版和第2版的標準。 JavaScript 1.5 發(fā)布于2000年11月14日。符合ECMA-262第3版的標準。 JavaScript 1.6 發(fā)布于發(fā)布于2005年11月。加入了XML(E4X),Array方法,String以及泛型。 JavaScript 1.7 增加了許多東西,包括生成器,迭代器,數(shù)組解析,let表達式和解構賦值 JavaScript 1.8.5 包括符合ECMA-262 Edition 5的許多新功能。 這是最后一個JavaScript版本。
1997年7月,ECMAScript 1.0發(fā)布。
1998年6月,ECMAScript 2.0版發(fā)布。
1999年12月,ECMAScript 3.0版發(fā)布,成為 JavaScript 的通行標準,得到了廣泛支持
2009年12月,4.0版本爭議太大沒有發(fā)布,ECMAScript 5.0版 正式發(fā)布
2011年6月,ECMAScript 5.1版發(fā)布,并且成為 ISO 國際標準
2015年6月,ECMAScript 6 正式發(fā)布,并且更名為“ECMAScript 2015”,常稱為es6
2016年6月,ES2016發(fā)布,es7
2017年6月,ES2017發(fā)布, es8
JavaScript特性首先我們查一下官方的定義,在維基百科里它是這樣定義javascript這門語言的。
**JavaScript(通??s寫為JS)是一種高級的、解釋型的編程語言。JavaScript是一門基于原 型、函數(shù)先行的語言,是一門多范式的語言,它支持面向對象編程,命令式編程,以及函數(shù) 式編程。**
在客戶端,JavaScript在傳統(tǒng)意義上被實現(xiàn)為一種解釋語言,但在最近,它已經(jīng)可以被即時編譯(JIT)執(zhí)行。隨著最新的HTML5和CSS3語言標準的推行它還可用于游戲、桌面和移動應用程序的開發(fā)和在服務器端網(wǎng)絡環(huán)境運行,如Node.js。
特性: 一、運行在客戶端瀏覽器上; 二、不用預編譯,直接解析執(zhí)行代碼; 三、是弱類型語言,較為靈活; 四、與操作系統(tǒng)無關,跨平臺的語言; 五、腳本語言、解釋性語言 解釋性語言:把做好的源程序翻譯一句,然后執(zhí)行一句,直至結束; 執(zhí)行速度慢、效率低;依靠解釋器、跨平臺性好 (Php、javascript、Pyhton) 弱類型語言:不需要給一個變量指定特定的數(shù)據(jù)類型,允許隱式類型轉換, 即時編譯(JIT):Just-in-time compilation,縮寫:JIT,是一種提高程序運行效率的方法 命令式編程:命令式編程的主要思想是關注計算機執(zhí)行的步驟,即一步一步告訴計算機先做什么再做什么 函數(shù)式編程:函數(shù)式編程和聲明式編程是有所關聯(lián)的,因為他們思想是一致的:即只關注做什么而不是怎么做。 但函數(shù)式編程不僅僅局限于聲明式編程,函數(shù)式編程最重要的特點是“函數(shù)第一位”,即函數(shù)可以出現(xiàn)在任何地方. 比如你可以把函數(shù)作為參數(shù)傳遞給另一個函數(shù),不僅如此你還可以將函數(shù)作為返回值。 基于原型、函數(shù)先行的語言:js使用基于原型的的繼承機制,函數(shù)是js的第一等公民其他相關的語言特性
編譯型語言:把做好的源程序全部編譯成二進制代碼的可運行程序。然后,可直接運行這個程序編譯型語言,執(zhí)行速度快、效率高;依靠編譯器、跨平臺性差些。
強類型語言:強類型語言,當你定義一個變量是某個類型,如果不經(jīng)過代碼顯式轉換(強制轉化)過,它就永遠都是這個類型,如果把它當做其他類型來用,就會報錯
動態(tài)類型語言:動態(tài)類型語言是指在運行期間才去做數(shù)據(jù)類型檢查的語言,也就是說,在用動態(tài)類型的語言編程時,永遠也不用給任何變量指定數(shù)據(jù)類型,該語言會在你第一次賦值給變量時,在內部將數(shù)據(jù)類型記錄下來。例如JavaScript,Php,Python
靜態(tài)類型語言:靜態(tài)類型語言與動態(tài)類型語言剛好相反,它的數(shù)據(jù)類型是在編譯其間檢查的,也就是說在寫程序時要聲明所有變量的數(shù)據(jù)類型,C/C++是靜態(tài)類型語言的典型代表,其他的靜態(tài)類型語言還有C#、JAVA等
聲明式編程:聲明式編程是以數(shù)據(jù)結構的形式來表達程序執(zhí)行的邏輯。它的主要思想是告訴計算機應該做什么,但不指定具體要怎么做。它有一個特點是它不需要創(chuàng)建變量用來存儲數(shù)據(jù),另一個特點是它不包含循環(huán)控制的代碼如 for, while(SQL 語句,網(wǎng)頁編程中用到的 HTML 和 CSS 也都屬于聲明式編程)
文章版權歸作者所有,未經(jīng)允許請勿轉載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉載請注明本文地址:http://systransis.cn/yun/104361.html
摘要:正大力推進,網(wǎng)景通訊公司即將與他們達成一項協(xié)議,讓可以用在瀏覽器上。年月,網(wǎng)景通訊公司和達成協(xié)議將被重新命名為,它將會作為瀏覽器中小型客戶端任務的一種腳本語言,同時將會被提升為一種更大的開發(fā)富組件的專業(yè)工具。 本文轉載自:眾成翻譯譯者:網(wǎng)絡埋伏紀事審校: 為之漫筆鏈接:http://www.zcfy.cc/article/2389原文:https://auth0.com/blog/a-...
摘要:他們的計劃是,使用微軟開發(fā)者們所習慣的其他語言的開發(fā)工具所支持的靜態(tài)類型,得到更好的代碼。在微軟內部,被和以及團隊所使用,而且它被系的等公司使用。標準的編輯,同時也是微軟項目高級經(jīng)理的也同意。 本文轉載自:眾成翻譯譯者:文藺鏈接:http://www.zcfy.cc/article/895原文:http://thenewstack.io/javascript-transpilers-n...
摘要:然而,臨近規(guī)范發(fā)布時,有建議提及未來的版本號切換為編年制,比如用同來指代在年末前被定稿的所有版本??偟脕碚f就是版本號不再那么重要了,開始變得更像一個萬古長青的活標準。 你不知道的JS(下卷)ES6與之未來 第一章:ES的今與明 在你想深入這本書之前,你應該對(在讀此書時)JavaScript的最近標準掌握熟練,也就是ES5(專業(yè)來說是ES 5.1)。在此,我們決定全方面地談論關于將近的...
閱讀 2906·2021-11-22 09:34
閱讀 1228·2021-11-19 09:40
閱讀 3352·2021-10-14 09:43
閱讀 3584·2021-09-23 11:22
閱讀 1616·2021-08-31 09:39
閱讀 898·2019-08-30 15:55
閱讀 1425·2019-08-30 15:54
閱讀 874·2019-08-30 15:53