首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >需要涉及函数的快速JavaScript解释

需要涉及函数的快速JavaScript解释
EN

Stack Overflow用户
提问于 2014-06-02 08:43:14
回答 2查看 41关注 0票数 1

我正在读一篇评论JavaScript的博客,我正试着自学。我还在纠结于函数,不太理解这段代码是如何运行的。有人能给我解释一下吗?

谢谢!

代码语言:javascript
复制
square = function (a) {
  return a*a;
}
applyOperation = function (f, a) {
  return f(a);
}
applyOperation(square, 10); // 100
EN

回答 2

Stack Overflow用户

发布于 2014-06-02 08:47:44

applyOperation接受参数f和a,并返回f(a)。F参数是一个函数,它返回给定参数a的函数的值。

所以你调用applyOperation (applyOperation,10),这意味着square返回square(10),并且square函数只返回参数平方,给你100。

票数 2
EN

Stack Overflow用户

发布于 2014-06-02 09:02:35

f function称为callback functioncallback function是传递给另一个函数的函数。在您的代码中,square function就是callback function

callback function通常采用以下形式:

代码语言:javascript
复制
function myFunction (callback, arg){
    // ... some code
    callback(arg);
}

function myOtherFunction(arg){

    // ... some code

    // return something

}

// to invoke the function
myFunction(myOtherFunction, {arg1: 'someStringValue1', arg2: 'someStringValue2'});

注意,这里的arg对象可以有两个以上的arg,并且命名callback是一个约定。这意味着以下代码被认为是有效的

代码语言:javascript
复制
function myFunction (mysuperrandomfunctionthatwaspassed, arg){
    // ... some code
    mysuperrandomfunctionthatwaspassed(arg);
}

不过,如果您不使用单词callback作为回调函数,一些javascript开发人员可能会对您大喊大叫。

更多阅读:HEREHERE

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23985946

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档