js高级---闭包

1.函数的定义方式
方式一:函数声明式:function( ){ };
方式二:函数表达式(匿名函数)var fn=function( ){ };
方式三:new Function( )

2.函数调用
普通函数 function fn( ){ };fn();
对象的方法:var o={
say:function(){ }
}
o.say();
构造函数:
function Star() {};
new Star();
绑定事件函数写法一:
btn.function(){};
绑定事件函数写法二:
function add(){};
btn.οnclick=add;
绑定事件函数写法三:
var add=function(){}
btn.οnclick=add;
定时器函数:
setInterval(function(){},100)
立即执行函数:
(function(a){ console.log(a)})(x);
IIFE(立即调用函数表达式)是一个在定义时会立即执行的JavaScript函数。
(function(){})();
这是一个被称为自执行匿名函数的设计模式,主要包含两部分。第一部分是包围在圆括号
运算符()里的一个匿名函数,这个匿名函数拥有独立的词法作用域。这不仅避免了外界访
问此IIFE中的变量,而且又不会污染全局作用域。
3.函数内部的this指向
在这里插入图片描述

4.高阶函数:高阶函数是对其他函数进行操作的函数,它接收函数作为参数或将函数作为返回值输出。
5.闭包:闭包(closure)指有权访问另一个函数作用域中变量的函数。(官方说法) 简单理解就是 ,定义在一个函数内部的,它可以访问到外部函数的局部变量;
1.变量根据作用域的不同分为两种:全局变量和局部变量。
函数内部可以使用全局变量。
函数外部不可以使用局部变量。
当函数执行完毕,本作用域内的局部变量会销毁。
2.闭包形成条件:函数嵌套函数;内部函数持有外部函数的变量
3.闭包的作用
作用:函数内部可以使用全局变量。函数外部不可以使用另一个函数的局部变量。如果有需求函数外部可以使用函数内部的局部变量

6.垃圾回收机制
当函数执行完成后,作用域中的局部变量会被销毁(垃圾回收机制);
闭包可以使函数变量保存到内存中,与此同时也会造成

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值