1.Javascript簡(jiǎn)介
1.1 簡(jiǎn)介
JavaScript一種直譯式腳本語(yǔ)言,是一種動(dòng)態(tài)類型、弱類型互捌、基于原型的語(yǔ)言,內(nèi)置支持類型行剂。它的解釋器被稱為JavaScript引擎秕噪,為瀏覽器的一部分,廣泛用于客戶端的腳本語(yǔ)言硼讽,最早是在HTML(標(biāo)準(zhǔn)通用標(biāo)記語(yǔ)言下的一個(gè)應(yīng)用)網(wǎng)頁(yè)上使用巢价,用來(lái)給HTML網(wǎng)頁(yè)增加動(dòng)態(tài)功能。
在1995年時(shí),由Netscape公司的Brendan Eich壤躲,在網(wǎng)景導(dǎo)航者瀏覽器上首次設(shè)計(jì)實(shí)現(xiàn)而成城菊。因?yàn)镹etscape與Sun合作,Netscape管理層希望它外觀看起來(lái)像Java碉克,因此取名為JavaScript凌唬。
為了取得技術(shù)優(yōu)勢(shì),微軟推出了JScript漏麦,CEnvi推出ScriptEase客税,與JavaScript同樣可在瀏覽器上運(yùn)行。為了統(tǒng)一規(guī)格撕贞,因?yàn)镴avaScript兼容于ECMA標(biāo)準(zhǔn)更耻,因此也稱為ECMAScript。
1.2 簡(jiǎn)介組成部分
ECMAScript捏膨,描述了該語(yǔ)言的語(yǔ)法和基本對(duì)象秧均。
文檔對(duì)象模型(DOM),描述處理網(wǎng)頁(yè)內(nèi)容的方法和接口号涯。
瀏覽器對(duì)象模型(BOM)目胡,描述與瀏覽器進(jìn)行交互的方法和接口。
1.3 特點(diǎn)
(1)腳本語(yǔ)言链快。JavaScript是一種解釋型的腳本語(yǔ)言,C誉己、C++等語(yǔ)言先編譯后執(zhí)行,而JavaScript是在程序的運(yùn)行過(guò)程中逐行進(jìn)行解釋。
(2)基于對(duì)象域蜗。JavaScript是一種基于對(duì)象的腳本語(yǔ)言,它不僅可以創(chuàng)建對(duì)象,也能使用現(xiàn)有的對(duì)象巨双。
(3)簡(jiǎn)單。JavaScript語(yǔ)言中采用的是弱類型的變量類型,對(duì)使用的數(shù)據(jù)類型未做出嚴(yán)格的要求,是基于Java基本語(yǔ)句和控制的腳本語(yǔ)言,其設(shè)計(jì)簡(jiǎn)單緊湊地消。
(4)動(dòng)態(tài)性炉峰。JavaScript是一種采用事件驅(qū)動(dòng)的腳本語(yǔ)言,它不需要經(jīng)過(guò)Web服務(wù)器就可以對(duì)用戶的輸入做出響應(yīng)畏妖。在訪問(wèn)一個(gè)網(wǎng)頁(yè)時(shí),鼠標(biāo)在網(wǎng)頁(yè)中進(jìn)行鼠標(biāo)點(diǎn)擊或上下移脉执、窗口移動(dòng)等操作JavaScript都可直接對(duì)這些事件給出相應(yīng)的響應(yīng)。
(5)跨平臺(tái)性戒劫。JavaScript腳本語(yǔ)言不依賴于操作系統(tǒng),僅需要瀏覽器的支持半夷。因此一個(gè)JavaScript腳本在編寫(xiě)后可以帶到任意機(jī)器上使用,前提上機(jī)器上的瀏覽器支 持JavaScript腳本語(yǔ)言,目前JavaScript已被大多數(shù)的瀏覽器所支持。
1.4 日常使用
(1)嵌入動(dòng)態(tài)文本于HTML頁(yè)面迅细。
(2)對(duì)瀏覽器事件做出響應(yīng)巫橄。
(3)讀寫(xiě)HTML元素。
(4)在數(shù)據(jù)被提交到服務(wù)器之前驗(yàn)證數(shù)據(jù)茵典。
(5)檢測(cè)訪客的瀏覽器信息湘换。
(6)控制cookies,包括創(chuàng)建和修改等。
(7)基于Node.js技術(shù)進(jìn)行服務(wù)器端編程彩倚。
1.5 版本支持情況
(1)ECMA5的支持情況筹我。
(2)ECMA6的支持情況。
基本上是沒(méi)有瀏覽器完全支持的帆离,所以還是不要直接用的好蔬蕊。
但是有轉(zhuǎn)換器 (更準(zhǔn)確地說(shuō)是源代碼到源代碼的編譯器) 可以把ES6轉(zhuǎn)換為被瀏覽器接受的ES5,比如Babel以及Traceur 之類的項(xiàng)目哥谷。其中Babel對(duì) ES6 的支持程度比其它同類更高岸夯,而且Babel 擁有完善的文檔和一個(gè)很棒的在線交互式編程環(huán)境,因此用的比較多们妥。