var a = {} 與 var a = function(){} 的區(qū)別? 求詳解??!
2 回答

鴻蒙傳說
TA貢獻(xiàn)1865條經(jīng)驗(yàn) 獲得超7個(gè)贊
var a = {}
此時(shí)a是一個(gè)對(duì)象,是一個(gè)沒有任何屬性的對(duì)象。
var a = {'name':'object'}
此時(shí)a是一個(gè)對(duì)象,是一個(gè)有一個(gè)屬性的對(duì)象,屬性名為name,屬性的值為object。
alert(a.name) 或者alert(a[name])的結(jié)果都是object,這是對(duì)象訪問屬性的兩種方式。
var a = function(){}
此時(shí)a指向一個(gè)函數(shù),相當(dāng)于有一個(gè)函數(shù),名為a,可以這么調(diào)用這個(gè)函數(shù):
a()
只不過這個(gè)函數(shù)什么都沒有做。
var a = function(){
alert(1);
}
此時(shí)a是一個(gè)函數(shù),調(diào)用a()執(zhí)行的是函數(shù)體,也就是 alert(1)
就這樣了,沒什么不正常的吧。