当前位置: 首页 > article >正文

es6 中的箭头函数?

ES6(ECMAScript 2015)中的箭头函数是一种更简洁的函数表达式写法,它提供了一种更简洁的语法,并且有几个独特的特点。以下是对箭头函数的详细介绍:

语法

箭头函数的基本语法如下:

 

let arrowFunction = (parameters) => { /* 函数体 */ };
  • 如果函数体只有一行,可以省略花括号和 return 关键字。
  • 如果没有参数,需要一对圆括号。

特点

  1. 没有自己的 this 上下文
    箭头函数不会创建自己的 this 上下文。它们会捕获其所在上下文的 this 值,并继承它。这意味着箭头函数中的 this 始终指向定义时所在上下文中的 this 值,而不是调用时的上下文。

  2. 不能用作构造函数
    不能使用 new 关键字来创建箭头函数的实例。箭头函数没有原型属性,也没有 construct 方法。

  3. 没有 arguments 对象
    箭头函数没有自己的 arguments 对象。如果你需要访问参数,可以通过剩余参数或扩展运算符。

  4. 没有 super 关键字
    箭头函数不支持 super 关键字,因为它们不能作为构造函数。

  5. 总是词法 this
    由于箭头函数不绑定自己的 this,它们总是继承父执行上下文的 this

示例

  • 简单函数

     

    const add = (a, b) => a + b;

  • 单行返回

     

    const greet = () => "Hello, world!";

  • 对象方法

     

    const person = {
      sayHello: () => "Hello!",
      greet: function() {
        return "Hello!";
      }
    };

  • 回调函数

     

    document.getElementById('myButton').addEventListener('click', () => alert('Clicked!'));

应用场景

箭头函数非常适合用于回调函数和事件处理函数,特别是当你需要继承 this 的上下文时。例如,在 JavaScript 中的异步回调、事件监听器或者在使用 mapfilter 和 reduce 等数组方法时。


http://www.kler.cn/a/414111.html

相关文章:

  • 【Android+多线程】IntentService 知识总结:应用场景 / 使用步骤 / 源码分析
  • 对max_seq_length参数的理解,基于open-instruct框架:中英文解释
  • 什么是SeaTunnel
  • MD5算法加密笔记
  • nrm镜像管理工具使用方法
  • Paddle Inference部署推理(三)
  • Mybatis集成篇(一)
  • 使用 Go 语言中的 Context 取消协程执行
  • MySQL安装与卸载(linux)
  • docker查询是否运行
  • 《Unity Shader 入门精要》高级纹理
  • 网络编程中的字节序函数htonl()、htons()、ntohl()和ntohs()
  • C# 7.1 .Net Framwork4.7 VS2017环境下,方法的引用与调用
  • InstructGPT——AI 模型的对齐革命
  • 【插入排序】:直接插入排序、二分插入排序、shell排序
  • Python练习47
  • cesium 3dtile ClippingPlanes 多边形挖洞ClippingPlaneCollection
  • 同三维T80005JEHVA视频解码器
  • 算法知识-14-递归
  • VTK的基本概念(一)
  • 【Qt】QSettings类实现配置信息长期保存(掉电不擦除)
  • 【开发商城系统】
  • Redis开发03:常见的Redis命令
  • pandas 数据分析流程
  • 鸿蒙HarmonyOS学习笔记(6)
  • Opencv+ROS实现摄像头读取处理画面信息