上篇闭包基础中讲到了闭包原理,这节将讲闭包的一些运用。 在以前的文章中,涉及到闭包的运用有防抖节流。感兴趣的可以去看下。
用闭包实现登录
警告:如果闭包底层都不了解的话,请先去了解,要不你看不懂。。不是我嫌弃你,而是有些文章相辅相成。 我这么讲,你应该懂吧????
内容里注释实在不想写了,,,以前的防抖节流写过
<body>
<button id="loginBtn">点击</button>
<script>
// 单例模式实现登录
var createLogin = function () {
var div = document.createElement('div')
div.innerHTML = '登录的弹窗'
div.style.display = 'none'
document.body.appendChild(div)
return div
}
var getSingle = function (fn) {
var result;
return function () {
return result || (result = fn.apply(this.arguments))
}
}
var create = getSingle(createLogin)
document.getElementById('loginBtn').onclick = function () {
var loginLay = create()
loginLay.style.display = 'block'
}
</script>
</body>