概念:
立即执行函数顾名思义就是函数定义好之后立即执行。
函数表达式方式:
函数表达式后面加括号()即可立即执行函数。

  

var xmlhttpUtil = function () {
function getText(url,callback){
alert("dog");
}();
匿名函数方式:

匿名函数不允许作为单独的语句直接出现于javascript中,因此要想立即执行函数,
必须做出一些符合语法的改变:方法1、是将匿名函数赋值给一个变量,这就成了函数表达式,可在其后加括号立即执行。
方法2、匿名函数外面套一个括号(这是js语法允许的),这就相当于成了函数表达式,然后再在其后加括号即可立即执行。
(function(b){
alert(b);
})(321);
 
模块化:
由于函数内部的变量不会污染全局作用域,因此立即执行函数可用于模块化,很多第三方库都采用了这种方式。

var xmlhttpUtil = function () {
function getText(url,callback){
var request=new XMLHttpRequest();
request.open("GET",url);
request.send(null);
request.onreadystatechange=function(){
if(request.readyState===4 && request.status===200){
var type=request.getResponseHeader("Content-Type");
if(type.match(/^text/))
callback(request.responseText);
alert(request.responseText);
}
else { }
}
}
let xmlHttpRequestObj={};
xmlHttpRequestObj.getText=getText;
return xmlHttpRequestObj;
}(); 执行:
xmlhttpUtil.getText("/dog",function () {
alert("xmlhttprequest请求响应!");
});

javascript立即执行函数与模块化的更多相关文章

  1. (译)详解javascript立即执行函数表达式(IIFE)

    写在前面 这是一篇译文,原文:Immediately-Invoked Function Expression (IIFE) 原文是一篇很经典的讲解IIFE的文章,很适合收藏.本文虽然是译文,但是直译的 ...

  2. 详解javascript立即执行函数表达式(IIFE)

    立即执行函数,就是在定义函数的时候直接执行,这里不是申明函数而是一个函数表达式 1.问题 在javascript中,每一个函数在被调用的时候都会创建一个执行上下文,在函数内部定义的变量和函数只能在该函 ...

  3. javascript立即执行函数

    javascript和其他编程语言相比比较随意,所以javascript代码中充满各种奇葩的写法,有时雾里看花;当然,能理解各型各色的写法也是对javascript语言特性更进一步的深入理解.  ( ...

  4. JavaScript 立即执行函数

    js中(function(){…})()立即执行函数写法理解 javascript和其他编程语言相比比较随意,所以javascript代码中充满各种奇葩的写法,有时雾里看花,当然,能理解各型各色的写法 ...

  5. javascript立即执行函数 (function(){})()

    看到一段代码: (function(){ var outer = $('#subject'); outer.find('li').on('mouseover', mouseover); })() ( ...

  6. JavaScript的匿名函数和模块化的使用方法

    对于开发人员来说,很多时候我们都会涉及到JavaScript的使用,而在使用过程中,最令人沮丧的就是变量没有相应的使用范围. 在开发中,对于任何变量.数组.函数.对象等,只要不在函数的内部,都会被默认 ...

  7. javascript自执行函数为什么要把windows作为参数传进去

    http://segmentfault.com/q/1010000000311686 (function (window, $, undefined) { play=function(){ $(&qu ...

  8. Javascript 自动执行函数(立即调用函数)

    开头:各种原因总结一下javascript中的自动执行函数(立即调用函数)的一些方法,正文如下 在Javascript中,任何function在执行的时候都会创建一个执行上下文,因为function声 ...

  9. javascript立刻执行函数

    一般常见的立刻执行函数推荐如下两种: (function(a){ console.log(a); })("kk"); (function(a){ console.log(a) }( ...

随机推荐

  1. SSH开发中的注解使用

    在SSH中使用注解可以减少配置XML文件,毕竟随着项目规模的扩大,配置bean将把Spring的配置文件(applicationContext.xml)变得很混乱 在Spring的配置文件中开启注解扫 ...

  2. java成神之——安全和密码

    安全和密码 加密算法 公钥和私钥加密解密 生成私钥和公钥 加密数据 解密数据 公钥私钥生成的不同算法 密钥签名 生成加密随机数 基本用法 指定算法 加密对象 SealedObject Signatur ...

  3. kettle init

  4. Python基础学习四 函数

    1.内置函数 Python内置了很多有用的函数,是可以直接调用的. 参考链接:https://docs.python.org/3/library/functions.html 调用函数的时候,如果传入 ...

  5. MAVEN学习总结1

    一.安装Maven插件 下载下来的maven插件如下图所示:,插件存放的路径是:E:/MavenProject/Maven2EclipsePlugin

  6. GROUP BY ROLLUP和CUBE 用法

    ROLLUP和CUBE 用法           Oracle的GROUP BY语句除了最基本的语法外,还支持ROLLUP和CUBE语句. 如果是Group by  ROLLUP(A, B, C)的话 ...

  7. 62-U型数字

    https://nanti.jisuanke.com/t/20683 #include <iostream> using namespace std; int main(){ int ct ...

  8. HDU 3723 Delta Wave (高精度+calelan数)

    题意:给定一个图,问你只能向上向下,或者平着走,有多少种方法可以走到最后一个格. 析:首先先考虑,如果没有平的情况就是calelan数了,现在有平的情况,那么就枚举呗,因为数很大,所以要用高精度. 答 ...

  9. [原创]Java中使用File类的list方法获取一定数量的文件:FilenameFilter接口的特殊用法

    前言:有时候我们可能会遇到这样一个问题:需要遍历一个包含极多文件的文件夹,首先想到的肯定是使用File.list()方法,该方法返回一个String[],但是如果文件达到几亿呢?这个时候我们就需要分批 ...

  10. Bitmap压缩到指定尺寸大小,获取圆角、圆形图片

    /** * 使用Matrix将Bitmap压缩到指定大小 * @param bitmap * @param w * @param h * @return */ public static Bitmap ...