1.說(shuō)一下對(duì)變量提升的理解
2.說(shuō)明this幾種不同的使用場(chǎng)景
- 作為構(gòu)造函數(shù)執(zhí)行
- 作為對(duì)象屬性執(zhí)行
- 作為普通函數(shù)執(zhí)行
- call apply bind
3.創(chuàng)建10個(gè)<a>標(biāo)簽點(diǎn)擊的時(shí)候彈出來(lái)對(duì)應(yīng)的序號(hào)
var i
for(i=0;i<10;i++){
(function (i) {
var a = document.createElement("a")
a.innerHTML = i + '<br>'
a.addEventListener('click',function(e){
e.preventDefault()
alert(i)
})
document.body.appendChild(a);
})(i)
}
4.如何理解作用域
- 自由變量
- 作用域鏈揍拆,即自由變量的查找
- 閉包的兩個(gè)場(chǎng)景
5.實(shí)際開(kāi)發(fā)中閉包的應(yīng)用
//閉包實(shí)際應(yīng)用中主要用于封裝變量,收斂權(quán)限
function isFirstLoad() {
var _list = []
return function (id) {
if(_list.indexOf(id) >= 0) {
return false
} else {
_list.push(id)
return true
}
}
}
// 使用
var firstLoad = isFirstLoad()
firstLoad(10) //true
firstLoad(10) //false
firstLoad(20) //true