JavaScript函数声明必须以function关键字开头,含函数名、圆括号(可选参数)和花括号(函数体);函数名不可省略,支持提升,形参实参可不匹配,return语句可选。

JavaScript 函数声明的语法结构非常明确:以 function 关键字开头,后跟函数名、一对圆括号 ()(含可选参数)、一对花括号 {}(包裹函数体)。整个结构是语句级的,必须有名字,且不能省略任何核心部分。
基本语法格式
标准写法如下:
function functionName(param1, param2) {
// 函数体,执行逻辑
return result;
}
- function 是必需的关键字,不可省略或替换
- functionName 是函数名,必须遵循标识符命名规则(如小驼峰命名法),且不可为保留字
-
param1, param2 是形参列表,可为空(即
function foo() { ... }),多个参数用逗号分隔 -
花括号内 是函数体,包含任意合法语句;
return语句可选,无return时默认返回undefined
函数名不是可选的
函数声明必须带名字,这是它与函数表达式最直观的区别:
当用户要求为 Java 代码添加注释、修改注释、审查注释、整理注释格式,或要求按照代码注释规范处理 Java 文件时,使用本技能。本技能用于统一生成和维护 Java 类注释模板、按 Git 对比 release 判断版本号、补充每行代码上方中文块注释、调整注释空行规则,并保持 Java 文件 UTF-8 无 BOM 编码。典型触发场景包括:补充类注释、更新 @version、检查 @author 来源、整理行尾注释、把注释放到代码上一行、检查注释是否符合规范、构建前检查 Java 注释风格。
- 名字用于调用、调试和错误堆栈追踪
- 同作用域内重复声明同名函数,后声明的会覆盖前一个
- 不能写成
function (a, b) { ... }(缺少名字)——这属于函数表达式或语法错误
参数和返回值的处理方式
形参与实参之间不要求严格一一对应:
- 调用时传入参数少于形参个数,多余形参值为
undefined - 传入参数多于形参个数,多余实参可通过
arguments对象访问(箭头函数除外) - 函数体内用
var声明的变量是局部变量;不加var直接赋值会创建全局变量 -
return后面的表达式会被计算并作为函数返回值;遇到return立即退出函数
函数提升(Hoisting)带来的行为特点
函数声明会被整体提升到当前作用域顶部,因此可以先调用再定义:
-
sayHello("Tom"); function sayHello(name) { console.log("Hello, " + name); }是合法且能正常运行的 - 这种提升只适用于函数声明,不适用于函数表达式或箭头函数
- 提升的是整个函数定义,不只是函数名,所以函数体内所有代码都可被提前访问
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南










