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

JavaScript:函数与箭头函数的区别

ref

1. 定义

  • 函数

    function getName() {}
    
  • 箭头函数

    const getName = () => {}
    

2. 命名

  • 函数分为匿名、具名。

    function getName() {}
    let getName = function () {}
    
  • 箭头函数只有匿名

    const getName = () => {}
    

3. 构造函数

箭头函数都是匿名函数,所以不能作为构造函数。

使用箭头函数没有自己的词法上下文,因此不会有作用域 this,也不能用于构造函数。

let gen = () => {}
new gen()

new gen() // VM82:4 Uncaught TypeError: gen is not a constructor at :4:10
^

TypeError: gen is not a constructor

4. arguments

5. 原型对象

  • 函数

    function getName() {}
    console.log(getName.prototype)
    

    {}

  • 箭头函数没有原型对象。

    const getName = () => {}
    console.log(getName.prototype)
    

    undefined

6. 简写方式

箭头函数返回一个对象时,可以使用 () 包裹,并省略 return

const getKV = () => {return {age: 12}
}

简化后

const getKV = () => ({age: 12})
http://www.lryc.cn/news/31972.html

相关文章:

  • 八股文(四)
  • XSS挑战赛(xsslabs)1~10关通关解析
  • 什么是以太网供电POE
  • 【JUC2022】第七章 AQS、ReentrantReadWriteLock 和 StampedLock
  • Spark 磁盘作用
  • 三、Spark 内存管理
  • Java 面试常见项目问题回答
  • 文件上传和下载(原生JS + SpringBoot实现)
  • 【C语言学习笔记】:安全性
  • Linux - 磁盘存储管理 磁盘引入
  • 分割std::string成多个string
  • 3月多国更新进出口产品规定
  • nacos相关面试题
  • Linux基础命令-groupmems管理组群的成员
  • css系统化学习
  • AI的简单介绍
  • 【Linux】-- 进程间通讯
  • STM32模拟SPI时序控制双路16位数模转换(16bit DAC)芯片DAC8552电压输出
  • 基于intel x86+fpga智能驾驶舱和高级驾驶辅助系统硬件设计(二)
  • oneblog_justauth_三方登录配置【Github】
  • 自行车轮胎充气泵PCBA方案
  • 200 22222
  • <JVM上篇:内存与垃圾回收篇>13 - 垃圾回收器
  • 广义状态平均法功率变换器建模分析
  • 基于Spring Boot的快递管理系统
  • nerdctl不完全使用指南(开发者)
  • 【独家】华为OD机试 - 分糖果(C 语言解题)
  • 八股总结(二)计算机网络与网络编程
  • ChatGPT  一本正经的胡说八道 那也看看原理吧
  • ChatGPT:一个人机环境系统交互的初级产品