小编Dyl*_*ner的帖子

JavaScript 中的函数式编程 - 事件

我一直在阅读大量关于函数式编程的优点,并且正在尝试编写一些符合可能被视为函数式编程的代码。不变性、纯函数、局部状态等。

我遇到的特定问题如下所示。我不确定是否有某种方法可以在不违反这些规则的情况下做我想做的事。我想我是来了解这一点的。

let mouseDown = false;

document.addEventListener('mousedown', () => mouseDown = true);
document.addEventListener('mouseup', () => mouseDown = false);
document.addEventListener('mousemove', e => {
  if (mouseDown) console.log({ x: e.movementX, y: e.movementY });
});
Run Code Online (Sandbox Code Playgroud)

在使用 OOP 超过 10 年之后,我发现很难掌握 FP。然而,这不是重点。

所以,我的问题是:

  1. 有没有更好的方法来使用函数式编程解决这个特定问题?
  2. 我们应该担心到处使用函数式编程吗?

javascript events functional-programming

5
推荐指数
1
解决办法
1675
查看次数