请写出几种匿名自执行的写法(至少三种)

46 阅读2分钟

"```markdown

匿名自执行函数的写法

在JavaScript中,匿名自执行函数(Immediately Invoked Function Expression,IIFE)是一种常用的设计模式,用于创建独立的作用域。以下是几种实现匿名自执行函数的写法:

1. 使用圆括号包裹函数

(function() {
    console.log(\"这是第一种自执行函数。\");
})();

在这种写法中,函数被包裹在圆括号中,然后立即调用。这样可以避免在全局作用域中污染变量。

2. 使用前面加 void 关键字

void function() {
    console.log(\"这是第二种自执行函数。\");
}();

在这个例子中,void 关键字用于强制执行函数并忽略返回值。这样的写法也可以避免变量污染。

3. 使用加号(+)运算符

+function() {
    console.log(\"这是第三种自执行函数。\");
}();

在这里,使用加号(+)运算符将函数转换为一个表达式,并立即调用。这种方式也是常见的IIFE写法。

4. 使用!符号

!function() {
    console.log(\"这是第四种自执行函数。\");
}();

在这个例子中,使用!符号将函数转换为表达式,并立即执行。这种方式在某些情况下也很有用。

5. 使用箭头函数

(() => {
    console.log(\"这是第五种自执行函数。\");
})();

使用箭头函数的方式可以更加简洁,并且同样能够创建独立的作用域。

6. 结合参数传递

(function(a, b) {
    console.log(\"和是:\" + (a + b));
})(5, 10);

在这个示例中,IIFE接受两个参数,这使得在执行时可以传递值。

7. 使用命名函数表达式

(function namedFunction() {
    console.log(\"这是第七种自执行函数。\");
})();

虽然这个函数是匿名调用的,但它是一个命名函数表达式。命名可以帮助调试,但在此情况下不会影响IIFE的行为。

"