JavaScript 函数定义与调用192
## 函数定义
JavaScript 中的函数是一组用于执行特定任务的代码块,通过关键字 `function` 定义:
```javascript
function 函数名(参数1, 参数2, ...) {
// 函数体:包含要执行的代码
}
```
例如,定义一个计算两个数之和的函数:
```javascript
function sum(a, b) {
return a + b;
}
```
## 函数调用
要执行函数,使用函数名后跟括号和要传递给函数的参数:
```javascript
函数名(参数1, 参数2, ...);
```
例如,调用 `sum` 函数并计算 10 和 20 的和:
```javascript
const result = sum(10, 20);
(result); // 输出:30
```
## 函数参数
函数可以接受一个或多个参数,以供函数体使用:
```javascript
function greet(name) {
(`Hello, ${name}!`);
}
greet("John"); // 输出:Hello, John!
```
如果未提供参数,则可以使用默认值:
```javascript
function greet(name = "World") {
(`Hello, ${name}!`);
}
greet(); // 输出:Hello, World!
```
## 返回值
函数可以通过 `return` 语句返回一个值,该值将存储在函数调用的变量中:
```javascript
function square(number) {
return number * number;
}
const squaredNumber = square(5);
(squaredNumber); // 输出:25
```
如果没有指定 `return` 语句,函数将返回 `undefined`。
## 匿名函数
匿名函数没有名称,通常用于作为回调函数或作为参数传递给其他函数:
```javascript
const double = function(number) {
return number * 2;
};
const doubledNumber = double(10);
(doubledNumber); // 输出:20
```
## 箭头函数
箭头函数是匿名函数的一种简写语法,使用 `=>` 箭头:
```javascript
const double = (number) => number * 2;
const doubledNumber = double(10);
(doubledNumber); // 输出:20
```
## 函数声明与函数表达式
函数可以声明(使用 `function` 关键字)或使用函数表达式(使用匿名函数或箭头函数)定义:
```javascript
// 函数声明
function add(a, b) { return a + b; }
// 函数表达式
const subtract = function(a, b) { return a - b; };
```
## 函数作用域
JavaScript 中的变量和函数具有作用域,控制着它们可以被访问的代码范围:
* 全局作用域:在脚本最外层定义的变量和函数可以在脚本中的任何地方访问。
* 局部作用域:在函数内定义的变量和函数只能在该函数内访问。
## 闭包
闭包是具有访问其封闭作用域中变量的函数。当函数被调用并返回时,即使外层函数已执行完,闭包仍然可以访问这些变量:
```javascript
function createCounter() {
let count = 0;
return function() {
count++;
return count;
};
}
const counter = createCounter();
(counter()); // 输出:1
(counter()); // 输出:2
```
## 总结
JavaScript 函数是执行特定任务的代码块。它们通过 `function` 关键字定义,并使用函数名后跟括号和参数调用。函数可以返回一个值,并具有作用域,控制它们可以被访问的代码范围。闭包是具有访问其封闭作用域中变量的函数。
2025-02-17
最新文章
2小时前
6小时前
6小时前
6小时前
7小时前
热门文章
01-13 17:12
01-10 10:09
01-04 07:30
12-29 18:49
12-04 08:05

JavaScript NES 模拟器开发入门:从零开始构建你的复古游戏机
https://jb123.cn/javascript/67635.html

Python安装教程:夜曲编程之旅的起点
https://jb123.cn/python/67634.html

JavaScript 获取当前年份和周数:详解及应用
https://jb123.cn/javascript/67633.html

FreeBSD下Nginx与Perl的完美结合:高效Web应用部署指南
https://jb123.cn/perl/67632.html

macOS桌面自动化:深入探究AppleScript与JXA
https://jb123.cn/jiaobenyuyan/67631.html
热门文章

JavaScript (JS) 中的 JSF (JavaServer Faces)
https://jb123.cn/javascript/25790.html

JavaScript 枚举:全面指南
https://jb123.cn/javascript/24141.html

JavaScript 逻辑与:学习布尔表达式的基础
https://jb123.cn/javascript/20993.html

JavaScript 中保留小数的技巧
https://jb123.cn/javascript/18603.html

JavaScript 调试神器:步步掌握开发调试技巧
https://jb123.cn/javascript/4718.html