javascript立即执行函数与模块化

概念:

立即执行函数顾名思义就是函数定义好之后立即执行。

函数表达式方式:

函数表达式后面加括号()即可立即执行函数。

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立即执行函数与模块化了解更多

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值