js自调用匿名函数的三种写法(推荐)

下面是JS自调用匿名函数的三种写法攻略:

1. 包裹执行

最常见的自调用匿名函数就是包裹执行(也称为自调用函数表达式,IIFE)。这种写法在函数表达式后紧跟一个括号,表示调用这个函数。其主要目的是防止变量污染全局作用域。

标准写法:

(function() {
  // 在这里编写你的代码
})();

可以使用 arrow function (ES6+)简化写法:

(() => {
  // 在这里编写你的代码
})();

示例:

(function() {
  const message = "Hello World!";
  console.log(message); // 输出 Hello World!
})();

2. 默认参数

自调用匿名函数的第二种方法是将所有代码放在函数表达式的第二个参数中,该参数是一个包含默认参数的对象。这样可以让你的代码更易于维护。

标准写法:

((a, b) => {
  // a 和 b 都是默认值
  a = a || "defaultA";
  b = b || "defaultB";
  // 在这里编写你的代码
})();

示例:

((a, b) => {
  a = a || "World";
  b = b || "Hello";
  console.log(`${b} ${a}!`); // 输出 Hello World!
})();

3. 全局变量

自调用匿名函数的第三种写法是将全局变量作为参数传递。这种方法不仅可以避免全局变量污染,还可以更好地控制代码。

标准写法:

((globalVariable) => {
  // 在这里编写你的代码,可以使用传入的 globalVariable 变量。
})(variable);

示例:

((window) => {
  const message = "Hello World!";
  window.alert(message);
})(window);

该示例在自调用匿名函数的参数中传入了 window。这样做可以避免直接使用全局作用域中的变量。在这个示例中,我们使用了 window 对象调用了 alert() 方法,并传递了 message 变量作为参数。

以上就是JS自调用匿名函数的三种写法攻略。希望对你有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:js自调用匿名函数的三种写法(推荐) - Python技术站

(0)
上一篇 2023年5月27日
下一篇 2023年5月27日

相关文章

  • JS中正则表达式要注意lastIndex属性

    JavaScript中的正则表达式是一种特殊的对象类型,用来匹配字符串中的模式。在正则表达式匹配时,需要注意到lastIndex属性。 lastIndex属性介绍 lastIndex是RegExp对象的一个属性,表示正则表达式匹配下一个字符的位置。当进行全局匹配时,每次匹配都是从上一次匹配完成后lastIndex处继续查找。当进行非全局匹配时,lastInd…

    JavaScript 2023年6月10日
    00
  • Vue Router中Matcher的初始化流程

    Vue Router的Matcher是用来匹配路径与路由配置的。该匹配器会在Vue Router的实例化过程中被初始化。Matcher的初始化流程如下: 创建空的路由映射表 在Vue Router实例化时,会创建一个空的路由映射表,用于存储路径与路由配置之间的映射关系。该映射表是一个由路径作为键,路由配置作为值的对象。 示例: const routes = …

    JavaScript 2023年6月11日
    00
  • JS数组reduce你不得不知道的25个高级用法

    下面我来为你详细讲解“JS数组reduce你不得不知道的25个高级用法”的完整攻略。 1. 什么是reduce? reduce() 方法用于对数组中的所有元素依次执行指定的回调函数,并将其缩减为单个值。这个值就是最后的返回值。reduce() 方法可以接收两个参数:回调函数和初始值。 一个简单的示例如下: let arr = [1, 2, 3, 4, 5];…

    JavaScript 2023年5月27日
    00
  • javascript 跨浏览器的事件系统

    JavaScript 跨浏览器的事件系统是指在各种浏览器下实现统一的事件,保证我们开发的代码能够在各种浏览器下都能正确的运行,不受浏览器差异的影响。以下是实现 JavaScript 跨浏览器的事件系统的完整攻略。 创建跨浏览器的事件处理程序 我们可借助 W3C 的标准事件模型来创建跨浏览器的事件处理程序,代码如下: //创建事件处理程序 function a…

    JavaScript 2023年6月10日
    00
  • 详解JavaScript正则表达式中的global属性的使用

    详解JavaScript正则表达式中的global属性的使用 在 JavaScript 中,正则表达式(RegExp)是一个很常用的工具,它用于匹配和操作字符串。其中,g 属性(global)是非常重要的一个属性,本篇文章将详细讲解如何使用 global 属性来进行全局匹配。 什么是 global 属性? g(global)属性用于指定在整个文本中查找所有匹…

    JavaScript 2023年6月10日
    00
  • javascript遍历json对象的key和任意js对象属性实例

    我们来详细讲解JavaScript如何遍历JSON对象的key和任意JS对象属性实例。 遍历JSON对象的key 在JavaScript中,我们可以使用for-in循环来遍历JSON对象的key。示例如下: const obj = {name: ‘张三’, age: 20, gender: ‘男’}; for (let key in obj) { conso…

    JavaScript 2023年5月27日
    00
  • js实现GridView单选效果自动设置交替行、选中行、鼠标移动行背景色

    实现GridView单选效果自动设置交替行、选中行、鼠标移动行背景色的过程分为以下几步: HTML结构构建 先构建一个table,需要注意每个单元格需要有一个唯一的id值,如下所示: <table id="myGridview"> <thead> <tr> <th>ID</th>…

    JavaScript 2023年6月11日
    00
  • JavaScript数组操作函数汇总

    让我来为您详细介绍 JavaScript 数组操作函数的常用方法。 JavaScript数组操作函数汇总 1. push() 作用:向数组末尾添加一个或多个元素,并返回新的长度。 语法:arr.push(element1, …, elementN) 示例: let arr = [1, 2, 3]; arr.push(4, 5); console.log(…

    JavaScript 2023年5月27日
    00
合作推广
合作推广
分享本页
返回顶部