Javascript語言特性
語言特性這里塊彬伦,書本沒有講的很多滔悉,基本都是在別的博客看的,很多博客的觀點(diǎn)也不一致单绑,我就挑幾點(diǎn)常見的理解一下回官。
(1)基于原型
????js的面向?qū)ο笫腔谠偷拿嫦驅(qū)ο螅瑢?duì)象創(chuàng)建的方式根本上只有一種搂橙,就是以原型對(duì)象為模板創(chuàng)建對(duì)象歉提。
????只有對(duì)象,沒有類份氧;對(duì)象繼承對(duì)象唯袄,而不是類繼承類。
????原型對(duì)象是新對(duì)象的模板蜗帜,它將自身的屬性共享給新對(duì)象恋拷。
????一個(gè)對(duì)象不但可以享有自己創(chuàng)建時(shí)和運(yùn)行時(shí)定義的屬性,而且可以享有原型對(duì)象的屬性。
這一塊內(nèi)容來自于大神博客
(2)弱類型
變量不需要聲明和指定類型即可使用
(3)動(dòng)態(tài)性
采用事件驅(qū)動(dòng)的方式進(jìn)行
可以在前端實(shí)現(xiàn)一些和服務(wù)器完全沒有聯(lián)系的效果
(4)解釋性
解釋性語言孤荣,變執(zhí)行邊解釋踪古,無需編譯
(5)安全性
語言相對(duì)來說比較安全,僅由瀏覽器執(zhí)行诀豁,不允許javascript訪問本地硬盤,以及操作服務(wù)器上的數(shù)據(jù)窥妇,只用來顯示瀏覽器的網(wǎng)頁效果和實(shí)時(shí)交互舷胜。
起源
Javascript 由 Netscape 網(wǎng)景公司于1995年著手開發(fā)。1996年活翩,Javascript 1.0 最初應(yīng)用于 Netscape Navigator 2 烹骨。
Javascript實(shí)現(xiàn)
Javascript?和?ECMAScript?實(shí)際上不是同一個(gè)東西翻伺,Javascript含義更為廣泛。?
Javascript 的三個(gè)組成部分如下
????核心ECMAScript
????文檔對(duì)象模型DOM
????瀏覽器對(duì)象模型BOM?
DOM?和?BOM?是兩個(gè)比較難的概念沮焕,后面的章節(jié)會(huì)專門提及吨岭。
ECMAscript標(biāo)準(zhǔn)
(1)ECMA-262實(shí)際上只是這門語言的基礎(chǔ),開發(fā)者們峦树、瀏覽器廠商們?cè)诖嘶A(chǔ)上構(gòu)建更完善的腳本語言辣辫,才能實(shí)現(xiàn)效果。
(2)ECMA-262規(guī)定的內(nèi)容有以下幾個(gè)方面:
????語法
????類型
????語句
????關(guān)鍵字
????保留字
????操作符
????對(duì)象
(3)版本歷史
????1997年魁巩,以Javascript1.1為藍(lán)本制定ECMA-262標(biāo)準(zhǔn)第1版急灭,命名為ECMAScript
????1998年,ECMAScript成為ISO國際標(biāo)準(zhǔn)(ISO/IEC-16262)
????1998年歪赢,ECMAScript第2版化戳,無更新,跟ISO/IEC-16262保持統(tǒng)一
????1999年埋凯,ECMAScript第3版点楼,做出了很大的修改完善,使ECMAScript成為一門真正的編程語言
????ECMAScript第4版白对,因改動(dòng)過大被否決掠廓。被小幅改動(dòng)的ECMAScript 3.1所取代
????2009年,ECMAScript第5版甩恼,就是ECMAScript 3.1蟀瞧,所謂的es5,現(xiàn)在的主流
????2011年条摸,ECMAscript 5.1版發(fā)布悦污,并且成為ISO國際標(biāo)準(zhǔn)(ISO/IEC 16262:2011)
????2015年,ECMAScript第6版钉蒲,稱之es6或者es2015切端,本書未涉及,但主流瀏覽器大部分已兼容顷啼,即將成為主流踏枣。
為了更頻繁地發(fā)布包含小規(guī)模增量更新的新版本,以后的版本都會(huì)使用年份命名钙蒙,如es2016茵瀑。
相關(guān)概念
(1)ECMA
European Computer Manufactures Association,中文名“歐洲計(jì)算機(jī)制造商協(xié)會(huì)”躬厌,1994年后改名為:Ecma International——ECMA國際马昨。成立于1961年,總部位于日內(nèi)瓦。
ECMA的成員由一些世界主流的技術(shù)公司組成鸿捧,有不同的會(huì)員級(jí)別和準(zhǔn)入規(guī)則抢呆。
負(fù)責(zé)的標(biāo)準(zhǔn)有:
????ECMAScript語言規(guī)范(JavaScript)
????CD-ROM格式
????C#語言規(guī)范
????C++/CLI語言規(guī)范
????通用語言基礎(chǔ)結(jié)構(gòu)(CLI)
????Eiffel語言
????電子產(chǎn)品環(huán)境化設(shè)計(jì)要素
????Universal 3D標(biāo)準(zhǔn)
????OOXML
大名鼎鼎的?TC39?實(shí)際上是ECMA協(xié)會(huì)下的“39號(hào)技術(shù)委員會(huì)”,專門負(fù)責(zé)制定ECMAScript標(biāo)準(zhǔn)笛谦。
(2)ISO
International Organization for Standardization,中文名為“國際標(biāo)準(zhǔn)化組織”昌阿,成立于1946年饥脑,總部也是位于日內(nèi)瓦,是一個(gè)國家層面的組織懦冰,參加者包括各會(huì)員國的國家標(biāo)準(zhǔn)機(jī)構(gòu)和主要公司灶轰。?
ISO負(fù)責(zé)目前絕大部分領(lǐng)域(包括軍工、石油刷钢、船舶等壟斷行業(yè))的標(biāo)準(zhǔn)化活動(dòng)笋颤。
(3)W3C
World Wide Web Consortium 萬維網(wǎng)聯(lián)盟,成立于1994年内地,由美國麻省理工學(xué)院計(jì)算機(jī)科學(xué)和人工智能實(shí)驗(yàn)室 (MIT CSAIL)伴澄,總部位于法國的歐洲信息數(shù)學(xué)研究聯(lián)盟 (ERCIM) 和日本的慶應(yīng)大學(xué)(Keio University)聯(lián)合運(yùn)作,并且在世界范圍內(nèi)擁有分支辦事處阱缓。
搜到的資料顯示非凌,北京航空航天大學(xué)也是W3C全球總部之一。
以上荆针,就是《Javascript高級(jí)程序設(shè)計(jì)》第一章的學(xué)習(xí)筆記敞嗡,部分知識(shí)補(bǔ)充于網(wǎng)絡(luò)。