`
风雪涟漪
  • 浏览: 508815 次
  • 性别: Icon_minigender_1
  • 来自: 大连->北京
博客专栏
952ab666-b589-3ca9-8be6-3772bb8d36d4
搜索引擎基础(Search...
浏览量:9070
Ae468720-c1b2-3218-bad0-65e2f3d5477e
SEO策略
浏览量:18487
社区版块
存档分类
最新评论

Javascript 函数 (六) 返回值为函数的函数

阅读更多

返回值为函数的函数(Functions that Return Functions)

在前几篇文章已经介绍了函数要有返回值,即使没有写return,函数也会返回一个undefine。

接下来看看返回值为函数的情况

function a(){
 alert('a');
 return function(){
  alert('b');
 };
}

 在这个例子中,a函数执行了alert('a'),以及它返回了另一个函数b。关于返回b的调用我们可以这样来用。

var newFunc = a();
newFunc();

 执行结果为 alert a和alert b

 如果不想赋值调用这个函数也可以简写如下

 

a()();

 函数的自身重写

 因为函数可以返回一个函数,那就意味着可以用一个新的函数替代一个旧的函数,根据前一个例子来改进一下

a=a();

 第一次运行函数a,就alert a,再次运行函数a,就alert b,这个功能对初始化非常有用。这个函数a重写了自己,避免在以后调用初始化的功能(上个例子为alert a)。

当然我们还有更简单的方法来重写a函数那就是在a函数的内部重写它,来看看代码

function a(){
 alert("a")
 a=function(){
   alert("b");
 }
}

 只有在初次调用a函数才会执行 alert a 在以后的调用中,都会执行alert b

 下面结合前几节看个综合的例子

 

var c = function(){
   function a(){
    alert('a')
   }

   function b(){
    alert('b')
   }
   a();
   return b;
}();//alert('a');
c();//alert('b');

 这个例子有以下几点需要注意

 1. a函数,b函数是内部函数。

 2. return b 返回的是个函数的引用。

 3. 子调用函数重写了函数c。

 

 如果能明白这个例子,关于内部函数,子调用函数和返回值为函数的函数就可以都理解了。

 

 

分享到:
评论

相关推荐

    JavaScript函数式编程.pdf

    不过,由于【标题】中提供了文档的名称——"JavaScript函数式编程.pdf",我可以根据这个名称扩展出关于JavaScript函数式编程的知识点。 JavaScript函数式编程的知识点非常丰富,涉及很多方面的内容,下面将详细介绍...

    javascript函数式编程

    JavaScript函数式编程是一种编程范式,它强调将计算视为数据处理的过程,并且重视函数作为第一类公民,即函数可以作为变量赋值、作为参数传递、作为返回值返回。这种编程风格在JavaScript中尤其常见,因为它提供了...

    获取JavaScript异步函数的返回值

    今天研究一个小问题: 怎么拿到JavaScript异步函数的返回值? 1.错误尝试 当年未入行时,我的最初尝试: [removed] function getSomething() { var r = 0; setTimeout(function() { r = 2; }, 10); return r; ...

    javascript指南和函数式编程

    而《JavaScript函数式.zip》可能是一份关于JavaScript函数式编程的资料集合,函数式编程是一种编程范式,强调使用函数和避免改变状态。其中可能涵盖以下知识点: 1. **纯函数**:理解纯函数的定义,即给定相同的...

    使用简单的注释记录函数的所有作业和返回值

    "使用简单的注释记录函数的所有作业和返回值"这个主题强调了在编写JavaScript代码时,应如何有效地进行注释以提高代码质量。 在JavaScript中,我们通常使用两种主要类型的注释:单行注释(//)和多行注释(/* ... *...

    javascript_函数大全

    ### JavaScript函数大全解析 在深入探讨JavaScript函数的广泛应用与特性之前,让我们首先明确一点:JavaScript函数不仅是编程语言中的核心组件,更是实现复杂逻辑、封装功能模块的关键所在。不同于许多传统面向对象...

    javascript 函数教程(由浅入深)

    以下是关于JavaScript函数的详细讲解: 1. **函数定义**: - 无参函数定义:`function 函数名 () { 代码... }` - 有参函数定义:`function 函数名 (参数列表) { 代码... }` - 参数列表中的参数可以是变量、常量...

    javascript函数速查

    JavaScript函数是编程语言的核心组成部分,它是一段可重复使用的代码块,可以接受参数并返回值。在JavaScript中,函数不仅可以作为表达式,还能作为变量赋值、作为参数传递以及作为返回值。本速查指南将深入探讨...

    JavaScript函数式编程pdf

    JavaScript函数式编程是一种编程范式,它将计算视为数据处理,并强调使用无副作用的纯函数。在JavaScript中,函数式编程允许我们写出更简洁、可读性更强的代码,同时提高了代码的复用性和测试性。《JavaScript函数式...

    delphi与JavaScript进行交互,获取JS端返回值

    3. **调用JavaScript函数**:使用提供的API调用JavaScript函数,传入必要的参数。这可能涉及到字符串化参数、处理异步调用等细节。 4. **处理返回值**:当JavaScript函数执行完毕后,你需要注册一个回调来接收...

    javascript中声明函数的方法及调用函数的返回值

    函数的也不需要像c#那样要求所以路径都需要有返回值(这个不像c#语言,而且c#的方法也不需要在方法名前面在 function关键字) function add(i, j) { //现在只是声明了一个函数在这里,只有调用到它的时候它才会被...

    javascript实现根据函数名称字符串动态执行函数的方法示例

    首先,我们需要理解,在JavaScript中,函数是一等公民,这意味着函数可以作为变量来存储,可以作为参数传递给其他函数,也可以作为其他函数的返回值。利用这些特性,我们能够通过函数名的字符串形式来动态调用函数。...

    javascript 函数式编程

    JavaScript 函数式编程是一种编程范式,它将函数视为第一类公民,允许它们作为其他函数的参数、返回结果,甚至可以存储在变量中。在JavaScript中,函数式编程提供了更高级别的抽象,使得代码更简洁、可读性更强,...

    JavaScript ES6函数式编程入门经典_javascript_

    JavaScript ES6函数式编程是现代Web开发中的重要概念,它为开发者提供了更高效、更简洁的编程方式。本文将深入探讨ES6中的函数式编程特性,帮助初学者掌握这一核心技能。 1. **箭头函数**:箭头函数是ES6引入的一种...

    JavaScript 函数.pdf

    函数返回值 函数可以返回值,这些值在函数执行完成后返回给调用代码。您可以使用 return 关键字来指定要返回的值。例如: ``` function myFunction(x, y) { return x + y; } ``` 匿名函数 除了使用 function ...

    qt 调用javascript函数 带参数

    例如,如果你有一个名为`myJSFunction`的JavaScript函数,可以这样调用: ```cpp QWebFrame *frame = webView->page()->mainFrame(); frame->evaluateJavaScript("myJSFunction()"); ``` 4. **传递参数** 如果...

    javascript函数大全

    以下是一些关于JavaScript函数的关键知识点: 1. **定义函数**:函数通过`function`关键字定义,后面跟着函数名和一组参数列表,参数之间用逗号分隔,然后是花括号内的函数体。例如: ```javascript function ...

    一本关于JavaScript中函数式编程的书

    在JavaScript中,函数是第一类对象,这意味着它们可以赋值给变量、作为参数传递给其他函数,也可以作为其他函数的返回值。这是函数式编程的基础,因为它允许我们用函数来构建更复杂的函数。 二、纯函数 纯函数是只...

    怎么通过onclick事件获取js函数返回值(代码少)

    接下来,我将详细介绍如何通过onclick事件获取JavaScript函数返回值。 首先,创建一个按钮元素,并为其绑定点击事件处理器是实现该功能的基本步骤。在上述的代码示例中,我们看到`createBtn`函数用于动态创建按钮,...

Global site tag (gtag.js) - Google Analytics