Javascript中的自执行匿名函数
程序员文章站
2022-04-05 11:09:22
...
格式:
(function(){ alert("自执行匿名函数"); })();
解释:这是相当优雅的代码(如果你首次看见可能会一头雾水:)),包围函数(function(){})的第一对括号向脚本返回未命名的函数,随后一对空括号立即执行返回的未命名函数,括号内为匿名函数的参数。
/** 带参数的例子:**/
(function(arg){
alert("带参数的函数:" + arg);
})(20);
重要用途:
1.可以用它创建命名空间,只要把自己所有的代码都写在这个特殊的函数包装内,那么外部就不能访问,除非你允许
2.定义全局化变量
(function() { function $(id){ return document.getElementById(id); } function __setValue(id,value){ $(id).value = value; } window['mySpace']={}; window['mySpace']['setValue']=__setValue; })();
执行:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JavaScript面向对象编程</title>
<script type="text/javascript" src="auto.js"></script>
<script type="text/javascript">
function init(){
//$('txtId').value = 'test'; // 因为不允许,所有不能调用
mySpace.setValue('txtId','test');
}
</script>
</head>
<body onload="init();">
<input id="txtId">
</body>
</html>