相关疑难解决方法(0)

为什么绑定比闭包慢?

之前的一张海报在Javascript中询问了Function.bind vs Closure:如何选择?

并且部分收到了这个答案,这似乎表明bind应该比闭包更快:

范围遍历意味着,当您要获取存在于不同范围内的值(变量,对象)时,会增加额外开销(代码执行速度变慢).

使用bind,您将调用具有现有范围的函数,因此不会进行范围遍历.

两个jsperfs表明bind实际上比闭包慢得多.

这是作为对上述评论发布的

并且,我决定编写自己的jsperf

那么为什么绑定这么慢(铬+ 70%)?

由于它不是更快并且闭包可以起到相同的作用,应该避免绑定吗?

javascript performance v8 node.js

76
推荐指数
2
解决办法
2万
查看次数

反应性能:绑定与匿名函数

我想知道bind在React组件中使用和匿名函数之间是否存在性能差异.

具体而言,下列其中一项是否比另一种更高效?

const MyComponent = ({ myHandler }) => {
  ...
  return (
    <a onClick={myHandler.bind(this, foo, bar)} ...>
      hello world
    </a>
  );
}

const MyComponent = ({ myHandler }) => {
  ...
  return (
    <a
      onClick={() => {
        myHandler(this, foo, bar)
      }
      ...
    >
      hello world
    </a>
  );
}
Run Code Online (Sandbox Code Playgroud)

这个问题与可能的重复不同,因为可能的重复问题的答案集中在内存占用上.

javascript reactjs

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

标签 统计

javascript ×2

node.js ×1

performance ×1

reactjs ×1

v8 ×1