gpt4 book ai didi

javascript - 从右到左部分应用?

转载 作者:行者123 更新时间:2023-11-27 23:31:30 26 4
gpt4 key购买 nike

在 JS 中使用 bind 时,可以创建带有预定义参数的函数,例如:例如:

var add = function (a, b) {
return a + b;
};
var addToThree = add.bind(null, 3);

但是如果我想预定义第二个、第三个等参数,而不是第一个参数,我该怎么做?

最佳答案

在 ES2015 中你可以这样做:

const partial = fn => (...pargs) => (...args) => fn.apply(null, [...pargs, ...args]);
const partialRight = fn => (...pargs) => (...args) => fn.apply(null, [...args, ...pargs.reverse()]);

const myFunc = (one, two, three, four) => {
console.log(one);
console.log(two);
console.log(three);
console.log(four);
};

const myFuncPartial = partial(myFunc)('1');

const myFuncPartialRight = partialRight(myFuncPartial)('4', '3');

myFuncPartialRight('2');

关于javascript - 从右到左部分应用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34539896/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com