HLJ 发布于
2025-06-10 17:58:19
0阅读

JavaScript 函数表达式

上一篇文章:

JavaScript 函数基础

JavaScript 函数表达式

函数表达式是 JavaScript 中定义函数的一种方式,它比函数声明更灵活。下面详细介绍函数表达式的基础知识。

基本语法

const functionName = function(parameters) {
  // 函数体
  return value;
};

与函数声明的区别

  1. 函数声明会被提升(hoisting),可以在定义前调用

    sayHello(); // 正常工作
    function sayHello() {
      console.log("Hello!");
    }
    
  2. 函数表达式不会被提升,必须在定义后调用

    sayHi(); // 报错:sayHi is not a function
    const sayHi = function() {
      console.log("Hi!");
    };
    

匿名函数表达式

函数表达式可以是匿名的(没有名称):

const greet = function() {
  console.log("Hello there!");
};

命名函数表达式

也可以有名称,这在调试时很有用:

const factorial = function fac(n) {
  return n < 2 ? 1 : n * fac(n - 1);
};
console.log(factorial(5)); // 120

立即调用函数表达式 (IIFE)

可以定义后立即执行:

(function() {
  console.log("立即执行!");
})();

// 带参数的IIFE
(function(name) {
  console.log("Hello, " + name);
})("Alice");

作为参数传递

函数表达式可以作为参数传递给其他函数:

setTimeout(function() {
  console.log("1秒后执行");
}, 1000);

箭头函数表达式

ES6 引入的更简洁的语法:

const add = (a, b) => a + b;
const square = x => x * x;
const sayHello = () => console.log("Hello!");

使用场景

  1. 需要条件性定义函数时
  2. 作为回调函数
  3. 创建闭包
  4. 需要立即执行的函数
  5. 在对象字面量中定义方法

函数表达式提供了更大的灵活性,是 JavaScript 函数式编程的重要组成部分。

当前文章内容为原创转载请注明出处:http://www.good1230.com/detail/2025-06-10/773.html
最后生成于 2025-06-13 20:52:11
上一篇文章:

JavaScript 函数基础

此内容有帮助 ?
0