JavaScript函数是可重复使用的代码块,用于执行任务或计算并返回结果;支持函数声明、表达式和箭头函数,可传参、设默认值、返回任意类型,具有一等公民特性及闭包机制。
JavaScript 中的函数是一段可重复使用的代码块,用来执行特定任务或计算并返回结果。它既可以接受输入(参数),也能产出输出(返回值),是组织逻辑、提升代码复用性和可维护性的核心机制。
函数的基本定义方式
JavaScript 提供多种定义函数的方法,最常用的是函数声明和函数表达式:
-
函数声明:使用
function关键字 + 函数名 + 括号 + 大括号,例如:function greet(name) { return "Hello, " + name; } -
函数表达式:把函数赋值给变量,可以是匿名或命名的,例如:
const add = function(a, b) { return a + b; }; -
箭头函数(ES6+):更简洁的写法,没有自己的
this、arguments,适合简短逻辑:const multiply = (x, y) => x * y;
如何向函数传入参数和获取返回值
定义函数时括号内的名称叫形参,调用时传进去的实际值叫实参。函数通过 return 语句把结果交还给调用位置,没写 return 默认返回 undefined:
- 支持任意数量参数,多出的参数可通过
arguments对象或剩余参数...args获取 - 参数可以有默认值,比如
function say(msg = "Hi") { ... } - 返回值可以是任意类型:数字、字符串、对象、函数甚至另一个函数(闭包)
函数调用的常见形式
调用就是让函数运行起来,基本写法是在函数名后加括
号并填入对应参数:
- 直接调用:
greet("Alice")→ 返回"Hello, Alice" - 作为方法调用(绑定到对象上):
obj.doSomething() - 立即执行函数表达式(IIFE):
(function(){ console.log("run once"); })(); - 通过
call、apply或bind控制this和参数传递方式
函数是一等公民:可以像值一样操作
在 JavaScript 中,函数可以被赋值给变量、作为参数传给其他函数、从函数中返回,甚至存进数组或对象:
-
回调函数很常见,比如
[1,2,3].map(x => x * 2)中的箭头函数就是回调 - 高阶函数指接收函数为参数或返回函数的函数,如
filter、setTimeout - 闭包允许内部函数访问外部函数作用域中的变量,是实现私有变量和模块化的重要基础








