在查看Vue官方文档时,看到如下js:

getters: {
  // ...
  getTodoById: (state) => (id) => {
    return state.todos.find(todo => todo.id === id)
  }
}  

刚开始看这段代码(state) => (id) => {}  不知道是什么意思,但细想,id => {} 这本身是一个匿名函数,等同

function (id) {
  // ...
}

 

那么 (state) => (id) => {}  是不是表示:

function (state) {

  return function (id) {
    return ...;
  };
}

 

看下面一个例子:

  var a = {
    xx: 11,yy: (x) => (y) => {
      return x.find(e => e == y)
    }
  };
  console.log(a.yy([1, 2, 3])(1));

 

最后运行结果:

js 箭头函数  (state) => (id) => {}

 

 上面等价写法:

  var a = {
    xx: 11, 
    yy: function(x) {
      return function(y) {
        return x.find(e => e == y);
      }
    }
  };
  console.log(a.yy([1, 2, 3])(1));

  

js 箭头函数  (state) => (id) => {}

 

 

 

 

  

 

相关文章:

  • 2021-08-10
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-02-19
  • 2021-11-22
  • 2022-01-09
  • 2022-02-08
  • 2021-09-01
  • 2021-11-21
  • 2021-06-07
相关资源
相似解决方案