标签:编写 comm win function contain cal 使用 内部函数 ber
转载:http://www.cnblogs.com/mmzuo-798/p/7275412.html
闭包的作用:1、保护函数内的变量安全;2、在内存中维持一个变量(javascript垃圾回收机制)。
利用闭包的特性,我们可以在既避免内部临时变量影响全局空间,又可以在插件内部使用$符号作为jQuery的别名。常见的jQuery插件都是以下这种形式:
1
2
3
|
( function (){ /*编写代码*/ })(); |
首先定义一个匿名函数function(){/*编写代码*/},然后用括号括起来,最后通过()这个运算符来执行。可以传递参数进去,以供内部函数使用。
1
2
3
4
|
//为了更好的兼容性,开始前有个分号 ;( function ($){ //此处将$作为匿名函数的形参 /*编写代码,可以使用$作为jQuery的别名*/ })(jQuery); //将jQuery作为实参传递给匿名函数 |
插件闭包实例1:
1
2
3
4
5
6
|
;( function (win){ win.Login = function (){ //code } Login.prototype = { |
1
|
//code |
1
2
3
4
|
} })(window); //传入window对象 |
插件闭包实例2:
1
2
3
4
5
6
7
8
9
10
|
//单例模式插件 var Computer = ( function (){ var Calculator = function (o){<br> //code... <br> } Calculator.prototype = {<br> //code... <br> } return { calculator: function (o) { var Cal = new Calculator(o); } } })(); |
标签:编写 comm win function contain cal 使用 内部函数 ber
原文地址:http://www.cnblogs.com/BluceLee/p/7462792.html