📅  最后修改于: 2023-12-03 15:16:08.375000             🧑  作者: Mango
在 JavaScript 中,函数是一组指令、子程序或程序的代码块,它们可以在需要的时候被调用,而不是一遍又一遍地被重新编写。
函数定义的语法如下:
function functionName(parameters) {
//函数体
}
其中:
function
关键字是必须的functionName
是你为函数起的名字parameters
是函数的参数,多个参数需要用逗号分隔{}
内是函数体,不同于变量声明,必须在大括号内编写函数代码下面来看一个简单的例子:
function sum(a, b) {
return a + b;
}
一旦函数被定义完成,你可以通过指定函数名并传递必要的参数来调用该函数。例如,要调用上面的 sum
函数,需要这样做:
let result = sum(1, 2);
console.log(result); // 输出 3
在 JavaScript 中,函数可以返回值,这有助于我们在需要获取函数执行结果的时候使用。
function multiply(a, b) {
return a * b;
}
let result = multiply(2, 3);
console.log(result); // 输出 6
如果函数不需要返回值,则可以省略 return
语句。下面是一个例子:
function sayHello(name) {
console.log(`Hello, ${name}!`);
}
sayHello('Alice'); // 输出 "Hello, Alice!"
除了使用函数定义语句外,我们还可以使用函数表达式来定义函数。
函数表达式的语法如下:
const functionName = function(parameters) {
//函数体
}
注意到这里的 functionName
被定义为一个常量,因为它实际上是一个匿名函数的引用。下面是一个例子:
const square = function(x) {
return x * x;
}
let result = square(3);
console.log(result); // 输出 9
ES6 引入了一种更简洁的函数语法——箭头函数。箭头函数是使用 =>
操作符进行定义的。下面是一个简单的例子:
const add = (a, b) => {
return a + b;
}
let result = add(1, 2);
console.log(result); // 输出 3
如果函数体只有一句简单的返回语句,可以使用行内语法:
const multiply = (a, b) => a * b;
let result = multiply(2, 3);
console.log(result); // 输出 6
在函数内部定义的函数可以访问在包含它们的函数中定义的变量。这种机制称为闭包。
function outer() {
let x = 10;
function inner() {
console.log(x);
}
inner(); // 输出 10
}
outer();
这里的 inner
函数可以访问 outer
函数中定义的变量 x
,因为它们在同一个作用域内。
在 JavaScript 中,函数是一组指令、子程序或程序的代码块。你可以通过传递参数和返回值来控制函数的行为。函数还可以使用闭包来访问在包含它们的函数中定义的变量。