函数知识点------第二次记录

内部私有函数

function outer(param){
	function inner(theinput){
		return theinput*2;
	};
	return 'The result is '+inner(param);
};

输出结果如下

调用outer的时候,inner函数也执行了,直接调用inner,显示为未定义;

私有函数有以下好处

有助于确保全局名字空间的纯净性

确保私有性---我们可以选择只将一些必要的函数暴露给外部世界,而保留属于自己的函数,使他们不为该应用程序的其他部分所用。

返回函数的函数

function a(){
	console.log("A!");
	return function(){
		console.log("B!");
	};
};

输出结果

能重写自己的函数

var a=(function(){
	function someSetup(){
		var setup='done';
	};//私有函数
	
	function actualWork(){
		console.log('Woky-worky');
	};
	
	someSetup();
	
	return actualWork;//第一次执行时,会返回该函数,但不执行,等于重写了a
}()  //执行自调
);

输出结果

最初被调用时,重写a函数,之后调用a()时,显示为‘Woky-worky’

猜你喜欢

转载自blog.csdn.net/u012773082/article/details/87871665