首先闡述下本人學javascript的初衷,本人目前從事安全行業,目前能挖掘些基礎的XSS漏洞,但是想深入了解XSS,需有javascript基礎,例如了解DOM型XSS等,于是就有了這麼一出,下面就是記錄自己的學習筆記。
javascript是一門簡單的語言,也是一門複雜的語言。說它簡單,是因為學會使用它隻需片刻功夫;而說它複雜,是因為要真正掌握它則需要數年時間。實際上,前端工程師很大程度上就是指javascript工程師。前端入門容易精通難,說的是前端,更指的是javascript。本文是javascript基礎文法的第一篇——詞法結構。詞法結構是一套基礎性規則,用來描述如何使用javascript來編寫程式
關于javascript有這樣一個說法,java和javascript的關系是雷鋒和雷鋒塔的關系。那到底有沒有關系呢
javascript最開始的名字是LiveScript,後來選擇javascript作為其正式名稱的原因,大概是想讓它聽起來有系出名門的感覺。除了文法看起來和java類似之外,javascript和java是完全不同的兩種程式設計語言
程式設計語言分為解釋型和編譯型兩大類。java或C++等語言需要一個編譯器。編譯器是一種程式,能夠把用java等進階語言編寫出來的源代碼翻譯為直接在計算機上執行的檔案。解釋型程式設計語言不需要編譯器——它們僅需要解釋器,浏覽器中的javascript解釋器将直接讀入源代碼并執行
java在理論上幾乎可以部署在任何環境,但javascript卻傾向于隻應用在web浏覽器。而且,在javascript語言中,函數是一種獨立的資料類型,采用基于原型對象(prototype)的繼承鍊,javascript文法要比Java自由得多
基本上,JavaScript這個名字的原意是“很像Java的腳本語言”
定義
javascript是一門動态的、弱類型的解釋型程式設計語言,非常适合面向對象和函數式的程式設計風格。javascript的文法源自java,它的一等函數來自scheme,它的基于原型的繼承來自self
javascript用來增強頁面動态效果,實作頁面與使用者之間的實時、動态互動
javascript由三部分組成:ECMAScript、DOM和BOM
[1]ECMAScript由ECMA-262定義,提供核心語言功能(ECMA是歐洲計算機制造商協會)
[2]DOM(Document Object Model)文檔對象模型,提供通路和操作網頁内容的方法和接口
[3]BOM(Browser Object Model)浏覽器對象模型,提供與浏覽器互動的方法和接口

關于javascript這門語言,再怎麼強調都不為過的特性是大小寫敏感。javascript中的關鍵字、變量、函數名和所有的辨別符都必須采取一緻的大小寫形式
[注意]HTML并不區分大小寫(盡管XHTML區分大小寫)。許多用戶端javascript對象和屬性與它們表示的HTML标簽和屬性同名。在HTML中,這些标簽和屬性名可以使用大寫也可以使用小寫,而在javascript中則必須是小寫。例如,在HTML中設定事件處理程式時,onclick屬性可以寫成onClick,但在javascript代碼中,必須使用小寫的onclick
和其他任何程式設計語言一樣,javascript保留了一些辨別符為自己所用。這些保留字不能用做普通的辨別符。由于好多參考書的誤導,貌似保留字和關鍵字是分開的,其實并不是,關鍵字隻是保留字的一部分。保留字包括關鍵字、未來保留字、空字面量和布爾值字面量
保留字
/
這是一個多行注釋
//報錯
注釋1
注釋1.1
\u0009 水準制表符 <TAB>
\u000B 垂直制表符 <VT>
\u000C 換頁符 <FF>
\u0020 空格符 <SP>
\u00A0 非中斷空格符 <NBSP>
\uFEFF 字元序标記
<code>【7】《javascript DOM程式設計藝術(第2版)》第2章 Javascript文法</code>
<code></code>
<code>本文轉自 wt7315 51CTO部落格,原文連結:</code>http://blog.51cto.com/wt7315/2061216