在JavaScript中,函数可以通过多种方式定义,包括函数声明、函数表达式和箭头函数。以下是每种方法的语法示例: ### 1. 函数声明(Function Declaration) 函数声明使用`function`关键字后跟一个标识符(函数名)和一对圆括号(其中可以包含参数),圆括号后跟着一对大括号,大括号中包含函数的体(执行的语句)。 ```javascript function functionName(param1, param2) { // 函数体 console.log(param1 + param2); } // 调用函数 functionName(2, 3); // 输出: 5 ``` ### 2. 函数表达式(Function Expression) 函数表达式通常将一个匿名函数(或具名函数)赋值给一个变量。这种方式定义的函数可以是匿名的。 #### 匿名函数表达式 ```javascript var functionName = function(param1, param2) { // 函数体 console.log(param1 + param2); }; // 调用函数 functionName(2, 3); // 输出: 5 ``` #### 具名函数表达式(虽然通常不推荐使用具名函数表达式赋值给变量,因为这会引发混淆) ```javascript var functionName = function namedFunction(param1, param2) { // 函数体 console.log(param1 + param2); }; // 调用函数 functionName(2, 3); // 输出: 5 ``` ### 3. 箭头函数(Arrow Function) 箭头函数提供了一种更简洁的方式来写函数表达式。箭头函数使用`=>`语法,左侧为参数(参数列表可以省略括号当只有一个参数时),右侧为函数体(如果函数体只有一条语句,则表达式的结果自动成为函数的返回值,可以省略大括号和`return`)。 #### 单个参数 ```javascript const add = param => param + 2; console.log(add(3)); // 输出: 5 ``` #### 多个参数 ```javascript const sum = (param1, param2) => param1 + param2; console.log(sum(2, 3)); // 输出: 5 ``` #### 函数体多条语句 ```javascript const multiplyAndAdd = (param1, param2) => { const result = param1 * param2; return result + 10; }; console.log(multiplyAndAdd(2, 3)); // 输出: 16 ``` ### 注意 - 函数声明会被提升(hoisting)到其所在作用域的顶部,而函数表达式则不会被提升。 - 箭头函数没有自己的`this`、`arguments`、`super`或`new.target`。这些函数表达式中的`this`值基于其外层(函数或全局)上下文,这通常被称为“词法作用域”的`this`值。

点赞(0)
×
关注公众号,登录后继续创作
或点击进入高级版AI
扫码关注后未收到验证码,回复【登录】二字获取验证码
发表
评论
返回
顶部