第二章 javascript語法
1.變量
如果在某個(gè)變量進(jìn)行賦值之前未對(duì)其做成聲明哮洽,則賦值操作將自動(dòng)聲明該變量填渠。
所以,在賦值前先聲明好變量是良好的編程習(xí)慣鸟辅。
下面對(duì)變量mood和age做出了聲明:
var mood;
var age;
當(dāng)然也可以用一條語句聲明多個(gè)變量:
var mood,age;
甚至是允許程序猿把聲明變量和賦值一起完成:
var mood="happy"
var age=22;
var mood="happy",age=22;
2.數(shù)據(jù)類型
javascript是不要求進(jìn)行類型聲明的語言氛什,被稱為弱類型語言,這意味著程序猿可以隨意改變某個(gè)變量的數(shù)據(jù)類型匪凉。
3.數(shù)組
數(shù)組要用關(guān)鍵字Array 來聲明屉更,聲明時(shí)還可以對(duì)這個(gè)數(shù)組的元素個(gè)數(shù),也就是這個(gè)數(shù)組的長度做出規(guī)定:
var beatles = Array(4)
不過洒缀,在聲明或填充數(shù)組時(shí)寫出Array關(guān)鍵字瑰谜,是一個(gè)良好的編程習(xí)慣,提高腳本的可讀性树绩。
4.函數(shù)
當(dāng)需要反復(fù)執(zhí)行一段代碼時(shí)萨脑,我們都可以利用函數(shù)來避免重復(fù)輸入大量的相同內(nèi)容。
a.參數(shù)
在把數(shù)據(jù)傳遞給函數(shù)時(shí)饺饭,我們把這些數(shù)據(jù)稱為參數(shù)渤早。
b.return
c.命名變量名和函數(shù)名
命名變量時(shí),用下劃線來分割每個(gè)單詞瘫俊;命名函數(shù)則用駝峰法鹊杖。
5.變量的作用域
在第一次對(duì)某個(gè)變量進(jìn)行賦值時(shí)悴灵,應(yīng)該用var對(duì)其做出聲明。當(dāng)在函數(shù)內(nèi)部使用變量時(shí)骂蓖,更應(yīng)該這么做积瞒。
這時(shí),可以用var關(guān)鍵字明確地為在函數(shù)中使用的變量設(shè)定一個(gè)作用域登下。
如果在某個(gè)函數(shù)中使用了 var 茫孔,那么這個(gè)變量將被視為局部變量,它將只存在這個(gè)函數(shù)中被芳,如果沒有缰贝,則視為全局變量,如果已經(jīng)存在一個(gè)與之同名的變量畔濒,這個(gè)函數(shù)將覆蓋那個(gè)現(xiàn)有變量的值剩晴。
6.對(duì)象
包含在對(duì)象里的數(shù)據(jù),可以通過兩種形式——即屬性和方法侵状。
在JS腳本中李破,屬性和方法都需要使用“點(diǎn)”語法來訪問
給對(duì)象創(chuàng)建一個(gè)實(shí)例,需要用到關(guān)鍵字 new
7.內(nèi)建對(duì)象
數(shù)組就是一種javascript 內(nèi)建對(duì)象壹将,當(dāng)我們使用new 關(guān)鍵字去初始化一個(gè)數(shù)組時(shí)嗤攻,其實(shí)是在創(chuàng)建一個(gè)Array 對(duì)象的新實(shí)例:
var beatles = new Array();
Date 對(duì)象 可以用來檢索和存儲(chǔ)與一個(gè)特定的日期和時(shí)間有關(guān)的信息。在創(chuàng)建Date 對(duì)象的新實(shí)例時(shí)诽俯,JS解釋器將自動(dòng)地使用當(dāng)前日期和時(shí)間對(duì)它進(jìn)行初始化妇菱。
var current_date = new Date();
8.宿主對(duì)象
由Web瀏覽器提供的預(yù)定義對(duì)象被稱為宿主對(duì)象
有一種對(duì)象可以用來獲得關(guān)于某給定網(wǎng)頁上的任何一個(gè)元素的信息,它就是document對(duì)象暴区。
第三章 《DOM》
四個(gè)非常實(shí)用的DOM方法:getElementById闯团、getElementByTagName、getAttribute仙粱、setAttribute
在編寫JS腳本時(shí)經(jīng)常用到的房交,非常重要的宿主對(duì)象,最基礎(chǔ)的伐割,是window對(duì)象候味。
window對(duì)象對(duì)應(yīng)著瀏覽器窗口本身,這個(gè)對(duì)象的屬性和方法通常被統(tǒng)稱為BOM (瀏覽器對(duì)象模型)
9.節(jié)點(diǎn)
a.元素節(jié)點(diǎn)DOM的原子是元素節(jié)點(diǎn)隔心,例如body 白群、 p 、ul之類的元素
b.文本節(jié)點(diǎn)硬霍,例如 p
c.屬性節(jié)點(diǎn)
第四章 案例研究 JS美術(shù)館
10.childNodes 屬性
該屬性可以從給定文檔的節(jié)點(diǎn)樹把任何一個(gè)元素的所有子元素檢索出來帜慢。
childNodes 屬性返回一個(gè)數(shù)組,這個(gè)數(shù)組包含給定元素節(jié)點(diǎn)的全體子元素。
** 由childNodes屬性返回的數(shù)組包含著所有類型的節(jié)點(diǎn)粱玲,除了所有的元素節(jié)點(diǎn)躬柬,所有的屬性節(jié)點(diǎn)和文本節(jié)點(diǎn)也包含其中。**
element.childNodes;//語法格式
11.nodeType 屬性
可以利用nodeType 屬性來區(qū)分文檔里的各個(gè)節(jié)點(diǎn)抽减,返回的是一個(gè)數(shù)字
node.nodeType;//語法格式
12.nodeValue 屬性
如果想改變某個(gè)文本節(jié)點(diǎn)的值允青,那就要使用nodeValue屬性,它的用途是檢索(和設(shè)置)節(jié)點(diǎn)的值胯甩。