Chinaunix首页 | 论坛 | 博客
  • 博客访问: 42175
  • 博文数量: 30
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 310
  • 用 户 组: 普通用户
  • 注册时间: 2013-12-10 07:50
个人简介

学会总结,积累

文章分类

全部博文(30)

文章存档

2014年(14)

2013年(16)

我的朋友

分类: JavaScript

2013-12-10 13:56:28

我们都知道这种利用闭包的自执行函数,或者叫模拟块级作用域

点击(此处)折叠或打开

  1. (function(){
  2. })();
稍微解释一下:里面的这部分 ‘function(){}’就是闭包(因为它被包含在一个函数内部),给这个匿名函数添加括弧,让他形成一个表达式。有了表达式,并确定它的类型是函数(Function实例),我们就可以在表达式后面加一对括弧,直接调用(call)这个函数。现在我们再往下想,那既然是一般的调用函数,肯定可以带参数的喽,也就是在后面这对括弧里可以带参数。像我们最常见到的:

点击(此处)折叠或打开

  1. (function($){
  2.   
  3. })(jQuery)
你可以在闭包的任何地方使用‘$’,它都会指向jQuery 对象,为了深入了解,我们先复习一下形参和实参的概念,我这里有一个简单的回答:
形参:形式参数,函数声明、定义时的参数
实参:实际参数,就是函数调用时真正的参数
那我们就明白了: $是形参,而jQuery是实参。实参不能随便改写但形参可以(减少字节的好处,大家能想过来吧,和google closure complier 的功能一样)

阅读(635) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~