文章目录
自调用函数:只能自己在定义的同时调用自己一次,对外界不可见。
- 语法
// 函数名加与不加都可以
(function 函数名(形参){
	console.log(11);
})(实参)
- 使用:
// 用法一
const str = '流星';
(function (params){
	console.log(params);	// '流星'
})(srt)
// 用法二
const aa = (function (){
	return 11;
})();
console.log(aa);	// 11
- 但是如果存在2个,第一个能正常执行,第二个就会报错,其实就是只有首次调用才生效。
(function (){
	console.log(11);
})()
(function (){
	console.log(22);
})()
// 等价于下面这种写法
(function (){
	console.log(11);
})()();

- 在自调用函数中定义的变量,在外界是访问不到的,因为该变量的作用域仅限于自调用函数内部;
(function (){
	let aa = 11;
})()
console.log(aa);	// 报错:Uncaught ReferenceError: aa is not defined
- 并且在自调用函数外部,调用自调用函数也是不行的。
(function aa(){
	console.log(11);
})()
aa();	// 报错:Uncaught ReferenceError: aa is not defined



















