gpt4 book ai didi

javascript - 捕获调用的函数及其作为参数传入的参数

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:53:38 25 4
gpt4 key购买 nike

我是 JavaScript 的新手,有几个关于函数式编程的问题。

声明如下:

outer(inner(5));
  1. 是否有可能以一种允许的方式构造函数 outer捕获函数 inner 及其参数 5?
  2. 是否有可能以允许它的方式构造函数 inner将自身及其参数 5 传递给函数 outer?
  3. 如果以上两个问题的答案是否定的,是否可以以允许前者的方式构造函数 outerinner捕获函数 inner 及其参数 5 或后者将自身及其参数 5 传递给函数外部?

我试过:

使用 arguments 对象但无济于事。

function outer (parameter) {
return arguments;
}

function inner (n) {
return n + 1;
}

console.log(outer(inner(5))); // returns Arguments { 0: 6 ... }

使用 currying 但我看不到它对我有什么帮助,因为我没有得到以下声明:

outer()(5);

最佳答案

一种可能的解决方法是从 inner() 返回一个数组,该数组的一侧是处理函数,另一侧是参数。
outer 将能够通过读取数组来访问两者。

function outer(arr)
{
var fun = arr[ 0 ];
var arg = arr[ 1 ];
var result = fun(arg);
console.log('inner function is:', fun);
console.log('its argument is:', arg);
console.log('its result is:', result);
return result;
}

function inner(num)
{
return [
function (_num)
{
return _num + 1;
},
num
]
}

console.log(outer(inner(5)));

关于javascript - 捕获调用的函数及其作为参数传入的参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53667612/

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