(function () {
var str = '歡迎訪問我的主頁';
alert(str);
})();
/* !function () {
var str = '歡迎訪問我的主頁';
alert(str);
}()*/
~function () {
var str = '歡迎訪問我的主頁';
alert(str);
}()
封閉函數用 !或者 ~ 還有 ()()
閉包
function aa(b){
var a =12;
function bb() {
alert(a);
alert(b);
}
return bb;
}
var cc = aa(24);
//封閉函數寫閉包
var cc = (function)(b){
var a =12;
function bb(){
alert(a);
alert(b);
}
return bb;
})(24);
cc();
- 閉包就是函數里面有函數,也可以叫函數的嵌套
閉包用途
1.保存索引
li{
height: 30px;
background-color: gold;
margin-bottom: 10px;
}
</style>
<script type="text/javascript">
window.onload = function () {
var ali = document.getElementsByTagName('li');
for(var i=0; i<ali.length; i++){
(function (i) {
ali[i].onclick = function () {
alert(i)
}
})(i)
}
}
2.私有計數器
var count = (function () {
var a = 0;
function bb() {
a++;
return a;
}
return bb;
})();
alert(count());
alert(count());
var c = count();
alert(c);