AddEventListener中的箭头功能不起作用

问题描述

HTML:

<input type="button" id="hider" value="Click to hide">

为什么为什么此有效

JS:

function hide() {
   this.hidden=true;
};

hider.addEventListener('click',hide);

但是,为什么不起作用

hider.addEventListener('click',() => this.hidden=true);

解决方法

因为箭头功能中的this没有指向<input>元素。它指向创建箭头功能的范围。在MDN上了解它。