From 78e572cdf6b5a3d4d7483a97cb003065d070b9eb Mon Sep 17 00:00:00 2001 From: wizardforcel <562826179@qq.com> Date: Mon, 30 Apr 2018 22:39:07 +0800 Subject: [PATCH] 3 --- 3.md | 130 ++++++++++++++++++++++++++++------------------------ img/3-0.jpg | Bin 0 -> 49660 bytes 2 files changed, 71 insertions(+), 59 deletions(-) create mode 100644 img/3-0.jpg diff --git a/3.md b/3.md index e440360..0220634 100644 --- a/3.md +++ b/3.md @@ -1,16 +1,28 @@ ## 三、函数 +> 原文:[Functions](https://eloquentjavascript.net/03_functions.html) +> +> 译者:[飞龙](https://github.com/wizardforcel) +> +> 协议:[CC BY-NC-SA 4.0](http://creativecommons.org/licenses/by-nc-sa/4.0/) +> +> 自豪地采用[谷歌翻译](https://translate.google.cn/) +> +> 部分参考了[《JavaScript 编程精解(第 2 版)》](https://book.douban.com/subject/26707144/) + > 人们认为计算机科学是天才的艺术,但是实际情况相反,只是许多人在其它人基础上做一些东西,就像一面由石子垒成的墙。 > > 高德纳 +![](img/3-0.jpg) + 函数是 JavaScript 编程的面包和黄油。 将一段程序包装成值的概念有很多用途。 它为我们提供了方法,用于构建更大程序,减少重复,将名称和子程序关联,以及将这些子程序相互隔离。 函数最明显的应用是定义新词汇。 用散文创造新词汇通常是不好的风格。 但在编程中,它是不可或缺的。 以英语为母语的典型成年人,大约有 2 万字的词汇量。 很少有编程语言内置了 2 万个命令。而且,可用的词汇的定义往往比人类语言更精确,因此灵活性更低。 因此,我们通常会引入新的概念,来避免过多重复。 -### 3.1 定义函数 +## 定义函数 函数定义是一个常规绑定,其中绑定的值是一个函数。 例如,这段代码定义了`square`,来引用一个函数,它产生给定数字的平方: @@ -25,9 +37,9 @@ console.log(square(12)); 函数使用以关键字`function`起始的表达式创建。 函数有一组参数(在本例中只有`x`)和一个主体,它包含调用该函数时要执行的语句。 以这种方式创建的函数的函数体,必须始终包在花括号中,即使它仅包含一个语句。 -一个函数可以包含多个参数,也可以不含参数。在下面的例子中,makeNoise函数中没有包含任何参数,而power则使用了两个参数: +一个函数可以包含多个参数,也可以不含参数。在下面的例子中,`makeNoise`函数中没有包含任何参数,而`power`则使用了两个参数: -``` +```js var makeNoise = function() { console.log("Pling!"); }; @@ -59,7 +71,7 @@ console.log(power(2, 10)); 用`let`和`const`声明的绑定,实际上是它们的声明所在的块的局部对象,所以如果你在循环中创建了一个,那么循环之前和之后的代码就不能“看见”它。JavaScript 2015 之前,只有函数创建新的作用域,因此,使用`var`关键字创建的旧式绑定,在它们出现的整个函数中内都可见,或者如果它们不在函数中,在全局作用域可见。 -``` +```js let x = 10; if (true) { let y = 20; @@ -74,7 +86,7 @@ console.log(x + z); 每个作用域都可以“向外查看”它周围的作用域,所以示例中的块内可以看到`x`。 当多个绑定具有相同名称时例外 - 在这种情况下,代码只能看到最内层的那个。 例如,当`halve`函数中的代码引用`n`时,它看到它自己的`n`,而不是全局的`n`。 -``` +```js const halve = function(n) { return n / 2; @@ -85,13 +97,13 @@ console.log(n); // → 10 ``` -### 嵌套作用域 +## 嵌套作用域 -JavaScript不仅区分全局和局部绑定。 块和函数可以在其他块和函数内部创建,产生多层局部环境。 +JavaScript 不仅区分全局和局部绑定。 块和函数可以在其他块和函数内部创建,产生多层局部环境。 例如,这个函数(输出制作一批鹰嘴豆泥所需的配料)的内部有另一个函数: -``` +```js const hummus = function(factor) { const ingredient = function(amount, unit, name) { let ingredientAmount = amount * factor; @@ -113,11 +125,11 @@ const hummus = function(factor) { 简而言之,每个局部作用域也可以看到所有包含它的局部作用域。 块内可见的绑定集,由这个块在程序文本中的位置决定。 每个局部作用域也可以看到包含它的所有局部作用域,并且所有作用域都可以看到全局作用域。 这种绑定可见性方法称为词法作用域。 -### 3.4 作为值的函数 +## 作为值的函数 函数绑定通常只充当程序特定部分的名称。 这样的绑定被定义一次,永远不会改变。 这使得容易混淆函数和名称。 -``` +```js let launchMissiles = function(value) { missileSystem.launch("now"); }; @@ -126,13 +138,13 @@ if (safeMode) { } ``` -在第5章中,我们将会讨论一些高级功能:将函数类型的值传递给其他函数。 +在第 5 章中,我们将会讨论一些高级功能:将函数类型的值传递给其他函数。 -### 3.5 符号声明 +## 符号声明 创建函数绑定的方法稍短。 当在语句开头使用`function`关键字时,它的工作方式不同。 -``` +```js function square(x) { return x * x; } @@ -142,7 +154,7 @@ function square(x) { 这种形式的函数定义有一个微妙之处。 -``` +```js console.log("The future says:", future()); function future() { @@ -152,11 +164,11 @@ function future() { 前面的代码可以执行,即使在函数定义在使用它的代码下面。 函数声明不是常规的从上到下的控制流的一部分。 在概念上,它们移到了其作用域的顶部,并可被该作用域内的所有代码使用。 这有时是有用的,因为它以一种看似有意义的方式,提供了对代码进行排序的自由,而无需担心在使用之前必须定义所有函数。 -### 箭头函数 +## 箭头函数 函数的第三个符号与其他函数看起来有很大不同。 它不使用`function`关键字,而是使用由等号和大于号组成的箭头(`=>`)(不要与大于等于运算符混淆,该运算符写做`>=`)。 -``` +```js const power = (base, exponent) => { let result = 1; for (let count = 0; count < exponent; count++) { @@ -170,14 +182,14 @@ const power = (base, exponent) => { 如果只有一个参数名称,则可以省略参数列表周围的括号。 如果主体是单个表达式,而不是大括号中的块,则表达式将从函数返回。 所以这两个`square`的定义是一样的: -``` +```js const square1 = (x) => { return x * x; }; const square2 = x => x * x; ``` 当一个箭头函数没有参数时,它的参数列表只是一组空括号。 -``` +```js const horn = () => { console.log("Toot"); }; @@ -185,11 +197,11 @@ const horn = () => { 在语言中没有很好的理由,同时拥有箭头函数和函数表达式。 除了我们将在第 6 章中讨论的一个小细节外,他们实现相同的东西。 在 2015 年增加了箭头函数,主要是为了能够以简短的方式编写小函数表达式。 我们将在第 5 章中使用它们。 -### 3.6 调用栈 +## 调用栈 控制流经过函数的方式有点复杂。 让我们仔细看看它。 这是一个简单的程序,它执行了一些函数调用: -``` +```js function greet(who) { console.log("Hello " + who); } @@ -217,7 +229,7 @@ not in function 存储这个栈需要计算机内存中的空间。 当栈变得太大时,计算机将失败,并显示“栈空间不足”或“递归太多”等消息。 下面的代码通过向计算机提出一个非常困难的问题来说明这一点,这个问题会导致两个函数之间的无限的来回调用。 相反,如果计算机有无限的栈,它将会是无限的。 事实上,我们将耗尽空间,或者“把栈顶破”。 -``` +```js function chicken() { return egg(); } @@ -228,11 +240,11 @@ console.log(chicken() + " came first."); // → ?? ``` -### 3.7 可选参数 +## 可选参数 下面的代码可以正常执行: -``` +```js function square(x) { return x * x; } console.log(square(4, true, "hedgehog")); // → 16 @@ -240,13 +252,13 @@ console.log(square(4, true, "hedgehog")); 我们定义了`square`,只带有一个参数。 然而,当我们使用三个参数调用它时,语言并不会报错。 它会忽略额外的参数并计算第一个参数的平方。 -JavaScript对传入函数的参数数量几乎不做任何限制。如果你传递了过多参数,多余的参数就会被忽略掉,而如果你传递的参数过少,遗漏的参数将会被赋值成`undefined`。 +JavaScript 对传入函数的参数数量几乎不做任何限制。如果你传递了过多参数,多余的参数就会被忽略掉,而如果你传递的参数过少,遗漏的参数将会被赋值成`undefined`。 该特性的缺点是你可能恰好向函数传递了错误数量的参数,但没有人会告诉你这个错误。 优点是这种行为可以用于使用不同数量的参数调用一个函数。 例如,这个`minus`函数试图通过作用于一个或两个参数,来模仿`-`运算符: -``` +```js function minus(a, b) { if (b === undefined) return -a; else return a - b; @@ -262,7 +274,7 @@ console.log(minus(10, 5)); 例如,这个版本的`power`使其第二个参数是可选的。 如果你没有提供或传递`undefined`,它将默认为 2,函数的行为就像`square`。 -``` +```js function power(base, exponent = 2) { let result = 1; for (let count = 0; count < exponent; count++) { @@ -277,20 +289,20 @@ console.log(power(2, 6)); // → 64 ``` -在下一章当中,我们将会了解如何获取传递给函数的整个参数列表。我们可以借助于这种特性来实现函数接收任意数量的参数。比如console.log就利用了这种特性,它可以用来输出所有传递给它的值。 +在下一章当中,我们将会了解如何获取传递给函数的整个参数列表。我们可以借助于这种特性来实现函数接收任意数量的参数。比如`console.log`就利用了这种特性,它可以用来输出所有传递给它的值。 -``` +```js console.log("C", "O", 2); // → C O 2 ``` -### 3.8 闭包 +## 闭包 函数可以作为值使用,而且其局部绑定会在每次函数调用时重新创建,由此引出一个值得我们探讨的问题:如果函数已经执行结束,那么这些由函数创建的局部绑定会如何处理呢? -下面的示例代码展示了这种情况。代码中定义了函数wrapValue,该函数创建了一个局部绑定localVariable,并返回一个函数,用于访问并返回局部绑定localVariable。 +下面的示例代码展示了这种情况。代码中定义了函数`wrapValue`,该函数创建了一个局部绑定`localVariable`,并返回一个函数,用于访问并返回局部绑定`localVariable`。 -``` +```js function wrapValue(n) { let local = n; return () => local; @@ -310,7 +322,7 @@ console.log(wrap2()); 我们对上面那个例子稍加修改,就可以创建一个可以乘以任意数字的函数。 -``` +```js function multiplier(factor) { return number => number * factor; } @@ -326,11 +338,11 @@ console.log(twice(5)); 这个例子调用`multiplier`并创建一个环境,其中`factor`参数绑定了 2。 它返回的函数值,存储在`twice`中,会记住这个环境。 所以当它被调用时,它将它的参数乘以 2。 -### 3.9 递归 +## 递归 -一个函数自己调用是完全可以的,只要它没有经常这样做以致溢出堆栈。 调用自己的函数被称为递归函数。 递归允许一些函数以不同的风格编写。 举个例子,这是`power`的替代实现: +一个函数调用自己是完全可以的,只要它没有经常这样做以致溢出栈。 调用自己的函数被称为递归函数。 递归允许一些函数以不同的风格编写。 举个例子,这是`power`的替代实现: -``` +```js function power(base, exponent) { if (exponent == 0) { return 1; @@ -363,7 +375,7 @@ console.log(power(2, 3)); 使用递归编码的解决方案如下所示: -``` +```js function findSolution(target) { function find(current, history) { if (current == target) { @@ -390,7 +402,7 @@ console.log(findSolution(24)); 为此,该函数执行三个操作之一。 如果当前数字是目标数字,则当前历史记录是到达目标的一种方式,因此将其返回。 如果当前的数字大于目标,则进一步探索该分支是没有意义的,因为加法和乘法只会使数字变大,所以它返回`null`。 最后,如果我们仍然低于目标数字,函数会尝试从当前数字开始的两个可能路径,通过调用它自己两次,一次是加法,一次是乘法。 如果第一次调用返回非`null`的东西,则返回它。 否则,返回第二个调用,无论它产生字符串还是`null`。 -为了更好地理解函数执行过程,让我们来看一下搜索数字13时,find函数的调用情况: +为了更好地理解函数执行过程,让我们来看一下搜索数字 13 时,`find`函数的调用情况: ``` find(1, "1") @@ -410,7 +422,7 @@ find(1, "1") 缩进表示调用栈的深度。 第一次调用`find`时,它首先调用自己来探索以`(1 + 5)`开始的解决方案。 这一调用将进一步递归,来探索每个后续的解,它产生小于或等于目标数字。 由于它没有找到一个命中目标的解,所以它向第一个调用返回`null`。 那里的`||`操作符会使探索`(1 * 3)`的调用发生。 这个搜索的运气更好 - 它的第一次递归调用,通过另一个递归调用,命中了目标数字。 最内层的调用返回一个字符串,并且中间调用中的每个“||”运算符都会传递该字符串,最终返回解决方案。 -### 3.10 添加新函数 +## 添加新函数 这里有两种常用的方法,将函数引入到程序中。 @@ -420,7 +432,7 @@ find(1, "1") 给函数起名的难易程度取决于我们封装的函数的用途是否明确。对此,我们一起来看一个例子。 -我们想编写一个打印两个数字的程序,第一个数字是农场中牛的数量,第二个数字是农场中鸡的数量,并在数字后面跟上Cows和Chickens用以说明,并且在两个数字前填充0,以使得每个数字总是由三位数字组成。 +我们想编写一个打印两个数字的程序,第一个数字是农场中牛的数量,第二个数字是农场中鸡的数量,并在数字后面跟上`Cows`和`Chickens`用以说明,并且在两个数字前填充 0,以使得每个数字总是由三位数字组成。 ``` 007 Cows @@ -429,7 +441,7 @@ find(1, "1") 这需要两个参数的函数 - 牛的数量和鸡的数量。 让我们来编程。 -``` +```js function printFarmInventory(cows, chickens) { let cowString = String(cows); while (cowString.length < 3) { @@ -451,7 +463,7 @@ printFarmInventory(7, 11); 当然没有问题。但是当再次复制粘贴这四行代码的时候,我们停了下来并重新思考。一定还有更好的方案来解决我们的问题。以下是第一种尝试: -``` +```js function printZeroPaddedWithLabel(number, label) { let numberString = String(number); while (numberString.length < 3) { @@ -469,11 +481,11 @@ function printFarmInventory(cows, chickens, pigs) { printFarmInventory(7, 11, 3); ``` -这种方法解决了我们的问题!但是printZeroPaddedWithLabel这个函数并不十分恰当。它把三个操作,即打印信息、数字补零和添加标签放到了一个函数中处理。 +这种方法解决了我们的问题!但是`printZeroPaddedWithLabel`这个函数并不十分恰当。它把三个操作,即打印信息、数字补零和添加标签放到了一个函数中处理。 这一次,我们不再将程序当中重复的代码提取成一个函数,而只是提取其中一项操作。 -``` +```js function zeroPad(number, width) { let string = String(number); while (string.length < width) { @@ -493,25 +505,25 @@ printFarmInventory(7, 16, 3); 名为`zeroPad`的函数具有很好的名称,使读取代码的人更容易弄清它的功能。 而且这样的函数在更多的情况下是有用的,不仅仅是这个特定程序。 例如,您可以使用它来帮助打印精确对齐的数字表格。 -我们的函数应该包括多少功能呢?我们可以编写一个非常简单的函数,只支持将数字扩展成3字符宽。也可以编写一个复杂通用的数字格式化系统,可以处理分数、负数、小数点对齐和使用不同字符填充等。 +我们的函数应该包括多少功能呢?我们可以编写一个非常简单的函数,只支持将数字扩展成 3 字符宽。也可以编写一个复杂通用的数字格式化系统,可以处理分数、负数、小数点对齐和使用不同字符填充等。 一个实用原则是不要故作聪明,除非你确定你会需要它。 为你遇到的每一个功能编写通用“框架”是很诱人的。 控制住那种冲动。 你不会完成任何真正的工作 - 你只会编写你永远不会使用的代码。 -### 3.11 函数及其副作用 +## 函数及其副作用 我们可以将函数分成两类:一类调用后产生副作用,而另一类则产生返回值(当然我们也可以定义同时产生副作用和返回值的函数)。 -在农场案例当中,我们调用第一个辅助函数printZeroPaddedWithLabel来产生副作用,打印一行文本信息。而在第二个版本中有一个zeroPad函数,我们调用它来产生返回值。第二个函数比第一个函数的应用场景更加广泛,这并非偶然。相比于直接产生副作用的函数,产生返回值的函数则更容易集成到新的环境当中使用。 +在农场案例当中,我们调用第一个辅助函数`printZeroPaddedWithLabel`来产生副作用,打印一行文本信息。而在第二个版本中有一个`zeroPad`函数,我们调用它来产生返回值。第二个函数比第一个函数的应用场景更加广泛,这并非偶然。相比于直接产生副作用的函数,产生返回值的函数则更容易集成到新的环境当中使用。 纯函数是一种特定类型的,生成值的函数,它不仅没有副作用,而且也不依赖其他代码的副作用,例如,它不读取值可能会改变的全局绑定。 纯函数具有令人愉快的属性,当用相同的参数调用它时,它总是产生相同的值(并且不会做任何其他操作)。 这种函数的调用,可以由它的返回值代替而不改变代码的含义。 当你不确定纯函数是否正常工作时,你可以通过简单地调用它来测试它,并且知道如果它在当前上下文中工作,它将在任何上下文中工作。 非纯函数往往需要更多的脚手架来测试。 -尽管如此,我们也没有必要觉得非纯函数就不好,然后将这类函数从代码中删除。副作用常常是非常有用的。比如说,我们不可能去编写一个纯函数版本的console.log,但console.log依然十分实用。而在副作用的帮助下,有些操作则更易、更快实现,因此考虑到运算速度,有时候纯函数并不可取。 +尽管如此,我们也没有必要觉得非纯函数就不好,然后将这类函数从代码中删除。副作用常常是非常有用的。比如说,我们不可能去编写一个纯函数版本的`console.log`,但`console.log`依然十分实用。而在副作用的帮助下,有些操作则更易、更快实现,因此考虑到运算速度,有时候纯函数并不可取。 -### 3.12 本章小结 +## 本章小结 本章教你如何编写自己的函数。 当用作表达式时,`function`关键字可以创建一个函数值。 当作为一个语句使用时,它可以用来声明一个绑定,并给它一个函数作为它的值。 箭头函数是另一种创建函数的方式。 -``` +```js // Define f to hold a function value const f = function(a) { console.log(a + 2); @@ -530,13 +542,13 @@ let h = a => a % 3; 将程序执行的任务分成不同的功能是有帮助的。 你不必重复自己,函数可以通过将代码分组成一些具体事物,来组织程序。 -### 3.13 习题 +## 习题 -#### 3.13.1 最小值 +### 最小值 -前一章介绍了标准函数Math.min,它可以返回参数中的最小值。我们现在可以构建相似的东西。编写一个函数min,接受两个参数,并返回其最小值。 +前一章介绍了标准函数`Math.min`,它可以返回参数中的最小值。我们现在可以构建相似的东西。编写一个函数`min`,接受两个参数,并返回其最小值。 -``` +```js // Your code here. console.log(min(0, 10)); @@ -545,7 +557,7 @@ console.log(min(0, -10)); // → -10 ``` -#### 3.13.2 递归 +### 递归 我们已经看到,`%`(取余运算符)可以用于判断一个数是否是偶数,通过使用`% 2`来检查它是否被 2 整除。这里有另一种方法来判断一个数字是偶数还是奇数: @@ -559,7 +571,7 @@ console.log(min(0, -10)); 使用 50 与 75 测试该函数。想想如果参数为 –1 会发生什么以及产生相应结果的原因。请你想一个方法来修正该问题。 -``` +```js // Your code here. console.log(isEven(50)); @@ -570,15 +582,15 @@ console.log(isEven(-1)); // → ?? ``` -#### 3.13.3 字符计数 +### 3.13.3 字符计数 你可以通过编写`"string"[N]`,来从字符串中得到第`N`个字符或字母。 返回的值将是只包含一个字符的字符串(例如`"b"`)。 第一个字符的位置为零,这会使最后一个字符在`string.length - 1`。 换句话说,含有两个字符的字符串的长度为2,其字符的位置为 0 和 1。 -编写一个函数countBs,接受一个字符串参数,并返回一个数字,表示该字符串中有多少个大写字母“B”。 +编写一个函数`countBs`,接受一个字符串参数,并返回一个数字,表示该字符串中有多少个大写字母`"B"`。 -接着编写一个函数countChar,和countBs作用一样,唯一区别是接受第二个参数,指定需要统计的字符(而不仅仅能统计大写字母“B”)。并使用这个新函数重写函数countBs。 +接着编写一个函数`countChar`,和`countBs`作用一样,唯一区别是接受第二个参数,指定需要统计的字符(而不仅仅能统计大写字母`"B"`)。并使用这个新函数重写函数`countBs`。 -``` +```js // Your code here. console.log(countBs("BBC")); diff --git a/img/3-0.jpg b/img/3-0.jpg new file mode 100644 index 0000000000000000000000000000000000000000..53923d98e1f3fe5c4515c5c4a581d0dcf978ca59 GIT binary patch literal 49660 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 literal 0 HcmV?d00001