2016-11-22 39 views
0

我想写一个函数f,x值为参数并返回f(f(x))。例如,写一个两倍函数,它自己乘以一个数字四次,格式如下

twice(function (x) { return x * x; }, 3) 

应该返回81。我该怎么做?

+0

你能解释有明显的代码示例你的问题? –

+0

尝试去思考如何编写一个接受函数和另一个参数的函数声明,然后在函数体中将该函数应用于参数并返回结果....(提示:确实很短)。 – mikebridge

回答

-1

是什么阻止你?你已经有了答案。它工作得很好。

function twice(f, x) { 
 
    return f(f(x)); 
 
} 
 

 
var result = twice(function(n){return n*n;}, 3); 
 

 
console.log(result);

1

调用两次作为参数传递的匿名函数。在第二次调用中,使用第一次执行的返回值作为参数。

function twice(funct, a) {  
 
    return funct(funct(a)); 
 
} 
 

 

 
console.log(
 
    twice(function(x) { 
 
    return x * x; 
 
    }, 3) 
 
);

+1

您已经正确理解OP。 +1 –

相关问题