`

js函数表现形式

 
阅读更多

参见:
      http://www-128.ibm.com/developerworks/cn/web/wa-javascript.html

下面对 JavaScript 中的函数式风格作一快速总结:

  • 函数并不总是需要名称。 (匿名函数)
  • 函数可以像其他值一样分配给变量。
  • 函数表达式可以编写并放在括号中,留待以后应用。
  • 函数可以作为参数传递给其他函数。

在 JavaScript 中,可以编写匿名函数或没有名称的函数。为什么需要这样的函数?请继续往下读,但首先我们将学习如何编写这样一个函数。如果拥有以下 JavaScript 函数:


典型的函数

				
function sum(x,y,z) {
  return (x+y+z);
}

然后对应的匿名函数看起来应当如下所示:

 

匿名函数

				
function(x,y,z) {
  return (x+y+z);
}

要使用它,则需要编写以下代码:

				
var sum = function(x,y,z) {
  return (x+y+z);
}(1,2,3);
alert(sum);

 

使用函数赋值

也可以将函数作为值使用。还可以拥有一些所赋值是函数的变量。在最后一个示例中,还可以执行以下操作:

 

				
var sum = function(x,y,z) {
  return (x+y+z);
}
alert(sum(1,2,3));

在上面的示例中,为变量 sum 赋的值是函数定义本身。这样,sum 就成了一个函数,可以在任何地方调用。

 

JavaScript 允许用两种方式调用函数

				
alert (“Hello, World!");


    函数表达式

				
(alert) (“Hello, World!");

所以也可以编写以下代码:

 

( function(x,y,z) { return (x+y+z) } ) (1, 2, 3);// 定义函数之后就可以立即使用它

 

函数可以作为参数传递给其他函数

 

也可以将函数作为参数传递给其他函数。虽然这不是什么新概念,但是在后续的示例中大量的使用了这个概念。可以传递函数参数,如 清单 10 所示。

 

				
var passFunAndApply = function (fn,x,y,z) { return fn(x,y,z); };

var sum = function(x,y,z) {
  return x+y+z;
};

alert( passFunAndApply(sum,3,4,5) ); // 12

执行最后一个 alert 语句输出了一个大小为 12 的值。

分享到:
评论

相关推荐

    Javascript函数与对象

    ### JavaScript函数与对象详解 在JavaScript中,函数与对象是两个核心概念,它们构成了这门语言的基石。本文将深入探讨这两个主题,帮助读者更好地理解并掌握JavaScript。 #### 函数 函数是JavaScript中的第一类...

    JavaScript函数-深入解析与使用指南(很详细)

    ### JavaScript函数-深入解析与使用指南 #### 一、JavaScript函数的基本原理 JavaScript函数是一种能够封装特定任务的代码块,可以被重复调用以执行这些任务。这些函数可以通过接收参数来处理输入数据,并且通常会...

    函数式编程语言编程和程序验证PPT课件.pptx

    函数式编程语言的根基是λ演算,一个由λ抽象(λ-abstraction)和λ应用(λ-application)构成的形式系统,它在1930年代为研究函数定义、函数应用和递归而提出,并被认为是等价于图灵机的计算模型。 **λ演算简介...

    JavaScript中函数表达式和函数声明及函数声明与函数表达式的不同

    JavaScript中函数表达式和函数声明是创建函数的两种基本方式,它们在语法和行为上有所区别。函数声明(Function Declaration)和函数表达式(Function Expression)的不同之处在于它们在代码中的处理方式和使用时机...

    【JavaScript源代码】如何使用gpu.js改善JavaScript的性能.docx

    1. **创建内核:** 开发者定义一个JavaScript函数,该函数将被GPU.js转换为可以在GPU上执行的形式。这个函数被称为“内核”。 2. **分配输出:** 通过设置内核的输出大小,GPU.js能够确保计算结果按照预期的格式返回。...

    js函数setTimeout延迟执行的简单介绍

    这个参数是必需的,它既可以是直接传入的函数引用,也可以是字符串形式的JavaScript代码,但需要注意的是,字符串形式在ES5之后已经不推荐使用了,因为存在安全风险和可读性问题,推荐使用函数引用的方式。...

    通用ModelWindow函数

    模态窗口在网页上的表现形式通常是一个弹出框,用户必须与之交互后才能继续操作主页面。 在兼容性方面,这个通用ModelWindow函数特别考虑了旧版浏览器,如Internet Explorer 6和7,以及Firefox等其他主流浏览器。这...

    页面表现形式==相关页面及sheqian效果

    以上内容涵盖了页面表现形式的多个方面,包括布局策略和JavaScript在增强页面效果中的应用。理解并熟练运用这些知识,能够帮助开发者创建出美观、易用且高性能的网页。在实际项目中,应结合具体需求,灵活运用这些...

    js合集压缩包

    函数表达式、函数声明、箭头函数(=>)都是其表现形式。此外,还有闭包,它允许函数访问并操作其词法作用域内的变量,即使在其外部。 3. **对象**:JavaScript的对象是键值对的集合,可以使用字面量语法或构造函数...

    Web前端开发技术-复杂函数的应用.pptx

    在JavaScript中,匿名函数可以有以下几种表现形式: - 作为变量赋值:`var fn = function (params) { ... };` - 自调用:`(function (params) { ... })();` - 作为事件处理函数:`document.body.onclick = ...

    浅析javascript中函数声明和函数表达式的区别

    函数的声明有两种常见的形式:函数声明和函数表达式。它们在语法规则和行为表现上存在一些关键的差别。理解这些差别对于编写更加稳健和高效的JavaScript代码至关重要。 首先,函数声明是使用function关键字后跟一个...

    浅谈js中同名函数和同名变量的执行问题

    在JavaScript中,同名的函数和变量在执行时遵循不同的规则,而这些规则往往会影响到代码的执行顺序和最终的行为表现。首先,我们来看看同名函数的情况。 在JavaScript中,如果在一个作用域内定义了两个或多个同名的...

    设置按钮的选中态表现形式

    "设置按钮的选中态表现形式"这个话题聚焦于如何使按钮在用户交互时展现出清晰的状态反馈,特别是通过鼠标操作来实现多选和状态切换。这涉及到前端开发中的事件处理、样式控制以及用户体验设计。 首先,"按钮选中...

    JS回调函数深入理解

    只写变量名 say 返回的将会是 say方法本身,以字符串的形式表现出来。 而在变量名后加()如say()返回的就会使say方法调用后的结果,这里是弹出value的值。 二、js中函数可以作为参数传递 再看下面的两段代码: ...

    javascript之典型高阶函数应用介绍

    缘由 虽然以前也使用过javascript语言,...由于之前在学校对形式化方法这门课程比较感兴趣,而javascript又是函数式语言,因此我想把更多functional的东西用javascript来表现一下。几个函数 这几个方法均为javascript 1

    js代码-this的指向(模拟2):函数的形式

    在这个主题中,我们将深入探讨`this`在函数形式中的表现。 首先,`this`在JavaScript中的主要作用是引用对象的上下文,也就是它所在的环境。在全局作用域中,`this`通常指向全局对象,在浏览器环境中就是`window`。...

    js函数名与form表单元素同名冲突的问题

    在使用原生JavaScript进行DOM操作时,如果一个JavaScript函数与form表单中的某个元素(如input、button等)的id同名,就会出现命名冲突的问题。当页面加载时,由于JavaScript的执行顺序,可能会造成函数被误认为是...

    全面了解JS中的匿名函数

    在 JavaScript 中,函数可以使用函数声明或函数表达式的方式定义,而匿名函数通常是以函数表达式的形式出现的。 1. 函数声明:通常我们定义函数时会给予一个名字,这种函数声明的方式直接定义了一个可以多次调用的...

Global site tag (gtag.js) - Google Analytics