生活随笔
收集整理的這篇文章主要介紹了
ECMAScript-1【发展史-ECMA-编程语言-变量-JS值】
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
一.發展史及瀏覽器內核
瀏覽器內核
? ? ? ? 火狐:gecko
? ? ? ? chrome:webkit blink
? ? ? ? IE:trident
? ? ? ? 歐鵬:presto blink
? ? ? ? safari:webkit
? ? ?2.發展史
1990年覽器誕生,蒂姆伯納斯李 超文本分享資訊的人world wide web? 移植到C libwww/nexus允許別人瀏覽他人編寫的網站MOSAIC1993年 美國伊利諾大學NCSAZ組織(馬克 安德森)開發了MOSAIC瀏覽器顯示圖片,圖形化瀏覽器1994年 馬克安德森和吉姆克拉克(硅圖SGI),成立了一個公司MOSIAC communication corporation corporation標權屬于伊利諾大學,伊利諾大學把MOSIAC轉賣給了spy glcass 網景公司->netscape navigator1996年 微軟的公司收購了spy glass,然后在MOSAIC內核開發出來了 IE internet explorer1.0,同年IE3發布了 Jscript腳本語言,網景公司Brendan eich在netscape navigator 開發出了livescript(JS)的前身,JAVA火起來,網景livesript不溫不火,后面就和SUN公司,合作推廣和宣傳產品,livesript 更名為javascript2001年 IE6和XP誕生,出現了JS引擎2003年 Mozilla公司 firefox? 是根據netscape? avigator復制出來的2008年 google基于webkit blink GEARS離線上網,開發出來chrome瀏覽器 ->V8引擎JS引擎非常牛逼:a直接翻譯機器碼、b獨立于瀏覽器運行2009年? 甲骨文oracle收購了SUN公司,JS的所有權給甲骨文
二.ECMA
ECMA 全稱 European Computer Manufactures Association
歐洲計算機制造聯合會
作用: 評估、開發、認可電信、計算機標準
三.編程語言
ECMA-262 腳本語言的規范
(1).腳本語言:
->腳本引擎->解釋器
(2).編程四要素:
變量數據結構函數運算能力
(3).強類型弱類型
動態語言->腳本語言->解釋性語言->弱類型語言
靜態語言->編譯型語言->強類型語言
(4).前后端腳本
前端:javascript 客戶端腳本
后端: php 服務端腳本
(5).IE的jscript
jscript只支持微軟IE
vbscript
(6).JS內容
ECMAscript:語法、變量、關鍵字、保留字..
DOM:document object model W3C
BOM:browser object model 沒有規范
(7).輪轉時間片
JS引擎是單線程的但是可以模擬多線程
實現原理:短時間之內執行多個任務的片段
任務1 任務2 切分任務1 任務2 隨機排列這些任務片段,組成隊列 按照這個隊列順序將任務片送進JS進程 JS線程執行一個又一個的任務片段
(8).模板
四.變量
(1).命名規范:
不能以數字開頭 能以字母_$開頭 不能命名保留字和關鍵字
?五.JS的值
(1).原始值(基本類型)
Number(NaN為數字類型) String Boolean undefind null
存于棧內存,先進后出 賦值時到其他變量時其他變量copy數據另行開辟棧空間當原始數據變化,被賦值的變量值不變當原始數據被重新賦值將會另行開辟空間
(2).引用值
object arry function date RegExp
名稱存于棧,數據存于heap,但其中名稱指向棧賦值時到其他變量時其他變量在棧中開辟空間指向原始堆處不會另行開辟堆空間當原始數據發生變化,被賦值的變量值會改變當原始數據被重新賦值將會在棧和堆中開辟空間
var arr1 = [1, 2, 3, 4]; var arr2 = arr1; arr1.push(5); //此時arr2也是[1 2 3 4 5 ]
var arr1 = [1, 2, 3, 4]; var arr2 = arr1; arr1 = [1, 2]?? //此時arr2是[1 2 3 4 ] 與后面賦值的無關了
總結
以上是生活随笔為你收集整理的ECMAScript-1【发展史-ECMA-编程语言-变量-JS值】的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。