首页
技术小册
AIGC
面试刷题
技术文章
MAGENTO
云计算
视频课程
源码下载
PDF书籍
「涨薪秘籍」
登录
注册
ES6 简介
ES6 let和const
ES6 箭头函数(Arrow Functions)
ES6 解构赋值
ES6 迭代器和for-of循环
ES6 生成器(Generators)
ES6 模板字符串
ES6 数值
ES6 不定参数和默认参数
ES6 Symbols
ES6 集合
ES6 代理(Proxies)
ES6 类(Class)
ES6 子类 Subclassing
ES6 模块 Modules
ES6 async 函数
ES6 Promise 对象
ES6 Reflect
ES6 Map的介绍与API
ES6 编程风格
当前位置:
首页>>
技术小册>>
ES6入门指南
小册名称:ES6入门指南
ES6 新增许多新的语言特性和增强了现有的特性,其中包括不定参数和默认参数。 ------------------------- **1、不定参数** 不定参数是 ES6 中的一项新功能,它允许我们传递任意数量的参数给一个函数。在函数定义中,我们使用三个连续的点号(...)来指示函数可以接受任意数量的参数。这些参数将被转换成一个数组,可以像数组一样进行操作。以下是一个示例: ``` function sum(...numbers) { let result = 0; for (let number of numbers) { result += number; } return result; } console.log(sum(1, 2, 3)); // 输出 6 console.log(sum(4, 5, 6, 7, 8)); // 输出 30 ``` 在上面的代码中,我们定义了一个名为 sum 的函数,它接受任意数量的参数。在函数体中,我们将这些参数相加,并将结果返回。我们可以看到,我们可以将任意数量的数字传递给函数,它将正确地计算它们的总和。 在实际应用中,不定参数非常有用。例如,假设我们需要编写一个函数来计算一组数字的平均值,但我们不知道有多少个数字。使用不定参数,我们可以轻松地处理这种情况,而不必手动计算数组的长度或限制参数的数量。 **2、默认参数** 默认参数是另一个 ES6 中的新特性,它允许我们为函数参数提供默认值。这意味着如果我们在调用函数时没有为参数提供值,则函数将使用默认值。以下是一个示例: ``` function greet(name = 'World') { console.log(`Hello, ${name}!`); } greet(); // 输出 "Hello, World!" greet('John'); // 输出 "Hello, John!" ``` 在上面的代码中,我们定义了一个名为 greet 的函数,它接受一个名为 name 的参数。我们为 name 参数提供了一个默认值 'World'。如果我们调用 greet 函数时没有提供任何参数,它将使用默认值 'World'。如果我们提供一个参数,它将使用该参数的值。 默认参数非常有用,特别是当我们希望在调用函数时提供某些参数的默认值时。例如,假设我们需要编写一个函数来打印一条消息,但我们希望该消息的颜色默认为蓝色。我们可以使用默认参数来实现这一点,如下所示: ``` function printMessage(message, color = 'blue') { console.log(`%c${message}`, `color: ${color}`); } printMessage('Hello, World!'); // 输出 "Hello,World!",使用默认颜色 "blue" printMessage('Welcome!', 'green'); // 输出 "Welcome!",使用指定颜色 "green" ``` 在上面的代码中,我们定义了一个名为 `printMessage` 的函数,它接受两个参数:`message` 和 `color`。我们为 `color` 参数提供了默认值 `'blue'`。在函数体中,我们使用 `console.log` 方法来打印消息,并将颜色设置为指定的或默认的颜色。 **3、不定参数和默认参数的结合使用** 不定参数和默认参数可以结合使用,以提供更灵活的函数定义。例如,假设我们需要编写一个函数来计算一组数字的平均值,并希望可以传递一个参数来指定是否应该四舍五入结果。我们可以使用不定参数和默认参数来实现这一点,如下所示: ``` function average(...numbers, round = false) { let sum = 0; for (let number of numbers) { sum += number; } let result = sum / numbers.length; if (round) { result = Math.round(result); } return result; } console.log(average(1, 2, 3)); // 输出 2 console.log(average(4, 5, 6, 7, 8, 9, 10, true)); // 输出 7 ``` 在上面的代码中,我们定义了一个名为 average 的函数,它接受任意数量的数字参数。我们为 round 参数提供了一个默认值 false。在函数体中,我们计算数字的平均值,并根据 round 参数来决定是否四舍五入结果。 在上面的示例中,我们可以看到如何同时使用不定参数和默认参数。通过这种方式,我们可以定义灵活且可重用的函数,它们可以处理任意数量的参数,并且具有默认值,以便在不需要传递值时提供良好的默认行为。 **小结** 不定参数允许我们在函数定义中接受任意数量的参数,并将它们转换为一个数组进行操作。默认参数允许我们为函数参数提供默认值,以便在调用函数时不需要传递值时提供良好的默认行为。
上一篇:
ES6 模板字符串
下一篇:
ES6 解构赋值
该分类下的相关小册推荐:
深入学习前端重构知识体系
经典设计模式Javascript版
KnockoutJS入门指南
Javascript-ES6与异步编程
Flutter核心技术与实战
Javascript编程指南
JavaScript面试指南
JavaScript入门与进阶
剑指javascript
编程入门课:Javascript从入门到实战
零基础学JavaScript
剑指javascript-ES6