向函数签名添加附加参数

Add addional parameter to function signature

我使用了以下代码,它按预期工作。 现在我想将额外的输入添加到 modifyOpt 成为 modifyOpt(value) 我该怎么做? 目前 modifyOpt 正在从 findAPortAsync 获取一个参数,我需要从 outside 传递额外的参数...(来自包装所有这些承诺的函数)

return Promise.all([
    fs.readFile(filePath, 'utf8').then(pars.getEx.bind(null, 'user')), 
    sync(3000, 4000, 'localhost').then(modifyOpt)
]).then(function(args) {
    return processExe('exec', args[0], args[1], args[1]);
}) 

我尝试了 modifyOpt(value)modifyOpt.bind(value),但没有用

如果您想将函数调用为 modifyOpt(value, port),可以这样:

.then(modifyOpt.bind(null, value))

bind 的第一个参数是 this 值,后面是函数参数...
pars.getEx.bind...

你已经正确地做到了

当然,您始终可以这样做并使用您选择的任何参数顺序:

.then(function (port) { modifyOpt(port, value); })