JavaScript和它父親的故事

附贈脫單祕籍:瞭解一些JavaScript的歷史,聊天的時候說很差能夠得到更多程序員小妹子的崇拜的喲~ ๑乛◡乛๑~前端

閱讀本文可讓你更好的理解什麼是ECMAScript。程序員

圖片描述

本次文章內容來自:《JavaScript高級程序設計》,本書能夠說在學習JavaScript的路上一直被奉爲經典之做。
可是由於紙質書相對厚重,不是很方便,而且內容較多,小夥伴可能望而卻步,此次專門準備了紅寶書系列,從每一章中摘出內容來分享給你們,而且額外作一些擴展~走過路過不要錯過啦~面試

JavaScript的誕生編程

JavaScript誕生於1995年,誕生的目的主要是爲了負責一些輸入驗證的操做(例如:咱們常常驗證表單中的輸入是否符合要求)。在1995年以前,表單驗證的操做方法是必須把表單數據發送至服務器,才能肯定用戶是否沒有填寫某個必需要填寫的內容,中間耗費的時間能夠想象。若是我是使用者可能着急的想拍桌子,這種感受不亞於一張一直加載不出來的圖片,像這類抓狂的用戶體驗必須獲得改變!
因而,Netscape Navigator(網景)就但願經過JavaScript來解決這個問題。後端

後來隨着時代進步,JavaScript也在快速發展,時至今日,咱們能夠經過使用JavaScript來和瀏覽器以及內容之間進行幾乎全部方面的交互(例如:獲取window對象、innerHTML內容、各類節點等操做),它已經成爲一門功能全面的編程語言。瀏覽器

JavaScript做者服務器

提及JavaScript的做者,就是一個很傳奇的人物了。他的名字叫Brendan Eich(布蘭登·艾奇),上一張照片膜拜大神~
圖片描述編程語言

標準的程序員的樣子呢 罒ω罒函數式編程

大神就任於Netscape公司,公司但願發佈一種名爲LiveScript腳本語言來處理上面說到的表單的問題(爲何不是JavaScript呢~繼續往下看)。
由於時間比較趕因此Netscape和Sun公司就合做創建了一個聯盟。
這時候就不得誇一誇他們的推廣策略了
蹭熱度!!函數

這個詞對於咱們如今應該是一個很熟悉的詞,常常看到某個明星蹭熱度。可是這裏可不是某個明星,而是大名鼎鼎的後端語言Java。
Java是由Sun公司開發的技術,而Netscape公司的管理層又都是很喜歡Java的,當時的Java仍是熱度很高的,因而通過多方考量,最終將LiveScript更改成JavaScript。

此處不得不來一波小擴展~
Brendan Eich當時是34歲哦,因此你們在學習前端的時候,不要老是擔憂~哎呀,我會不會年紀太大了,三十幾歲還適合作前端麼?考慮這些不如好好考慮一下防脫髮技巧。≖‿≖✧

大神本人的主要發展方向是函數式編程,Netscape公司在招聘他的時候,是但願研究Scheme語言做爲網頁腳本語言的可能性,進公司之後的大神也覺得之後會和Scheme語言打交道,可是真香定律怎麼會放過他呢!

一個月以後,Netscape公司作出了最終的決策:將來的網頁腳本語言必須"看上去與Java足夠類似",可是要比Java簡單,而大神就是這個「簡化版Java」的設計師。

可是大神本人對於Java其實一點興趣也沒有。爲了應付公司的安排(大神式敷衍 o‿≖),他用了10天的時間就把JavaScript設計出來了。

大神不愧是大神!僅僅用了10天時間,就設計完了。不過這樣短期的敷衍設計也形成了不少的問題,語言的細節考慮的並不夠嚴謹,致使後來很長一段時間JavaScript寫的程序混亂不堪。

這次設計中借鑑了:

  • C語言的基本語法
  • Java語言的數據類型和內存管理
  • Scheme語言,將函數提高到"第一等公民"(first class)的地位
  • Self語言,使用基於原型(prototype)的繼承機制

我想若是不是Netscape公司最終決定出一個「簡化版Java」,可能咱們如今學習的JavaScript又是另一種樣子吧~

痛苦不堪的歲月

在JavaScript誕生以後,受到了不少人的關注,畢竟在當時這樣明顯的用戶體驗的提高仍是很受到你們歡迎的~

好的創新你們都會喜歡,因而微軟就在本身家的產品IE中一樣加入了JavaScript,不過和Netscape公司的不同,他們的是JScript。因而乎,當時的程序員就不得不面臨一個問題:兼容!相信你們都很討厭兼容這個東西,面試的時候若是遇到面試官說:「你須要兼容IE8如下」,我想不少小夥伴可能扭頭就走。

由於沒有規則及約定,兩邊開發的功能及命名都有本身的特點,兼容起來至關的麻煩,業界擔憂度日益加重,JavaScript的標準化被提上了議事日程。

1997年,以JavaScript 1.1 爲藍本的建議提交給了歐洲計算機協會商協會,協會指定39號技術委員會負責「把JavaScript標準化,要通用,而且能夠跨平臺使用」,這個39號委員會的成員來自Netscape、Sun、微軟及其餘關注腳本語言的公司,通過數月完成了ECMA-262——定義一種名爲ECMAScript的新腳本語言標準(針對JavaScript的語法、語義等進行約束制定出來的標準)。

自此之後,瀏覽器開發商就致力於將ECMAScript做爲各自JavaScript實現的基礎,從而解決了上面混亂不堪的兼容問題,纔有了咱們如今見到的JavaScript。

圖片描述

這就是JavaScript的誕生,下一期我會給你們講一下JavaScript中的三個核心部分喲~,感興趣的話記得要關注我哦 ✿◡‿◡

最後咱們在來看下,學習JavaScript找工做到底能夠獲得什麼樣的回報,上圖~
圖片描述
若是你下定決心走在前端的路上,做爲一個老程序員,我有一些忠告 (●’◡’●)ノ
圖片描述

那麼下面的📚,有可能之後你會有須要的哦 o‿≖✧
圖片描述

若是你們喜歡紅寶書這個系列的分享,或想了解更多的JS相關小趣聞,能夠評論下方留言交流討論哦~
圖片描述

訂閱號ID:Miaovclass關注妙味訂閱號:「妙味前端」,爲您帶來優質前端技術乾貨;

相關文章
相關標籤/搜索