1.Attribute和Property
Attribute就是DOM節(jié)點(diǎn)(即html標(biāo)簽)自帶的屬性,例如html中常用的id饭冬、class使鹅、title、align等昌抠。
Property是這個(gè)DOM元素作為對(duì)象患朱,js獲取的屬性,例如childNodes炊苫、firstChild等裁厅。
attributes是屬于propertys的一個(gè)子集,一般更改設(shè)置值都會(huì)互相影響(除了value)劝评,但新增屬性則不會(huì)互相影響
2.load和ready姐直,明確的說明是ready先執(zhí)行
(1)load:? ? window.onload()=function(){};? ? 頁(yè)面中所有元素(包括圖片flash)加載完畢后執(zhí)行,單頁(yè)面只能有一個(gè)
(2)ready:? DOM結(jié)構(gòu)加載完畢后就執(zhí)行蒋畜,單個(gè)頁(yè)面可以執(zhí)行多個(gè)
$(document).ready(function(){
? ? //執(zhí)行的代碼塊;
})
jquery簡(jiǎn)寫:
$(function(){
? ? //
})
3.函數(shù)引用和調(diào)用撞叽、函數(shù)聲明姻成、函數(shù)表達(dá)式
(1)函數(shù)聲明? 必須有函數(shù)名(如foo)插龄,它不是一個(gè)可執(zhí)行語(yǔ)句,不可以自調(diào)用
function foo(){
? ? //函數(shù)體
}
var f = foo;? //函數(shù)引用
var ff = foo();? //函數(shù)調(diào)用科展,可直接調(diào)用foo()均牢,也可調(diào)用f()
(2)賦值型函數(shù)表達(dá)式? 即通過表達(dá)式定義函數(shù),存儲(chǔ)在變量里才睹。函數(shù)表達(dá)式不需要函數(shù)名稱徘跪,通常通過變量名來(lái)調(diào)用
var f = function foo(str){
? ? //函數(shù)體
}
f(a);
var x=f(a);
//分組括號(hào)型函數(shù)表達(dá)式,這是立即執(zhí)行函數(shù)表達(dá)式
(function(){
? ? //函數(shù)體
})();
(function foo(){})();
舉例:function foo(){}() 報(bào)錯(cuò)是因?yàn)閒unction foo()是函數(shù)語(yǔ)句琅攘,而不是表達(dá)式垮庐,不能直接自調(diào)用。若(function foo(){})()則可以坞琴。
函數(shù)可以在聲明之前調(diào)用哨查,使用表達(dá)式定義函數(shù)時(shí)無(wú)法提升。? ?
myFunction(5);? ? ? ? ? ? ?
function myFunction(y) {? ? ? ?
? ? return y * y;? ? ? ?
}
4.myArray.push(a,b);將數(shù)據(jù)追加到數(shù)組最后剧辐,可以是一個(gè)或多個(gè)數(shù)據(jù)寒亥;myArray.unshift(a,b);.將數(shù)據(jù)追加到數(shù)組最前面,可以是一個(gè)或多個(gè)數(shù)據(jù)荧关;myArray.pop()獲取數(shù)組的最后一個(gè)值并移出溉奕,myArray.shift()獲取數(shù)組的第一個(gè)值并移出