問題是這樣的
function fn(opt){opt=opt||{}; }
簡單的就是為什么不用 var 聲明 opt 變量? 謝謝
不在函數(shù)內(nèi)部申明,哪個這個變量就是全局變量
這樣無論如何調(diào)用fn
函數(shù),打印的都是一個空對象。但是之前那種寫法,調(diào)用fn({a:1})
打印的就是{a:1}
這個對象
傳參的時候,自動在函數(shù)內(nèi)部創(chuàng)建一個變量
opt是形參,函數(shù)會自動聲明。
你把這個opt理解成函數(shù)scope內(nèi)一個內(nèi)部變量了。
如果在函數(shù)內(nèi)聲明和形參同名的內(nèi)部變量,應(yīng)該也是沒有問題的吧。