Javascript 如何读取以下箭头函数

Javascript 如何读取以下箭头函数,javascript,Javascript,如何阅读以下英文箭头函数?我可以理解有两个参数,即dispatch和getState。我如何阅读剩下的部分 如何将其作为普通函数编写 const apiMiddleware = ({ dispatch, getState}) => next => action => { 我希望你觉得这个回答很有用 let squarevalue = input => { input * input } let multiplyvalue = (input, multipl

如何阅读以下英文箭头函数?我可以理解有两个参数,即dispatch和getState。我如何阅读剩下的部分

如何将其作为普通函数编写

    const apiMiddleware = ({ dispatch, getState}) => next => action => {  

我希望你觉得这个回答很有用

let squarevalue = input => { input * input }

let multiplyvalue = (input, multiplier) => { input * multiplier }

作为普通函数编写,声明如下所示:

const apiMiddleware = function({ dispatch, getState}){
 return function(next) {
    return function(action) {
      return something;
  }
 }
} 

我建议您阅读这篇关于高阶箭头函数的伟大文章

如果它是用es5语法编写的,它可能会是这个样子

var-apimmediater=函数apimmediater(\u ref){
var调度=_ref.dispatch;
var getState=_ref.getState;
返回函数(下一步){
返回函数(动作){
console.log(“操作函数体”);
};
};
};编写此代码:

const apiMiddleware = ({ dispatch, getState}) => next => action => {  
作为正常功能(正常指无箭头):

以下是您在ES5中的编写方式:

var apiMiddleware = function(data) {
    var dispatch = data.dispatch;
    var getState = data.getState;
    return function(next) {
        return function(action) {
            //Rest of the code
        }
    }
}

这是ES6的一个不错的特性,叫做。这一条也很有趣,可能与您的代码有关:


尝试将代码粘贴到该文件中,并将转换后的脚本视为vanilla JS:

您可以使用以下babel编译器将es6代码转换为es5-


实际上每个函数中只有一个参数,
apimmediater
函数接受一个参数,一个具有两个属性的对象,
dispatch
getState
。然后,它返回一个函数,该函数接受一个
next
参数,并返回另一个函数,该函数接受一个action参数。这取决于它是如何构造的。我发现它通常写着“goes to”,但你也可以在这里查看:
var apiMiddleware = function(data) {
    var dispatch = data.dispatch;
    var getState = data.getState;
    return function(next) {
        return function(action) {
            //Rest of the code
        }
    }
}