为什么老师说箭头函数没法清

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

同学你好,

removeEventListener() 方法用于移除由 addEventListener() 方法添加的事件句柄。

注意: 如果要移除事件句柄,addEventListener() 的执行函数必须使用外部函数,匿名函数,类似 "document.removeEventListener("event", function(){ myScript });" 该事件是无法移除的。箭头函数也是没有名字的函数,因此无法移除。

举个例子:

① 

http://img1.sycdn.imooc.com//climg/5d7765f60001bd7511620581.jpg

效果:鼠标移入不会弹出imooc

http://img1.sycdn.imooc.com//climg/5d77661b000180cd12760166.jpg

②    移除事件写成箭头函数。

http://img1.sycdn.imooc.com//climg/5d7766920001b68311520347.jpg

效果: 鼠标移入事件并没有清除。

http://img1.sycdn.imooc.com//climg/5d7766800001bfea14280156.jpg

如果我的回答帮助了你,欢迎采纳,祝学习愉快~


  • JJJustin 提问者 #1
    那其实就不是箭头函数移除不了 是这样的写法 document.removeEventListener("event", function(){ myScript }); 都移除不了 我还以为箭头函数有什么特殊
    2019-09-10 17:06:58
  • 好帮手慕嘟嘟 回复 提问者 JJJustin #2
    同学你好,理解正确哦,并不是箭头函数有什么特殊,只是移出的时候,直接传函数名才能实现移出事件。如果我的回答帮助了你,欢迎采纳,祝学习愉快~
    2019-09-10 17:35:21
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师