【es6】解决箭头函数所有的问题,箭头函数的 this 指针,使用 new 操作符

  1. 箭头函数是 es6 提出的
  2. this 指针指向 定义箭头函数的全局上下文或函数上下文,是固定的
  3. call\apply\bind无法改变箭头函数的this
  4. 没有 arguments 对象,但是可以访问外部作用域中的 arguments 对象
  5. 没有 prototype 属性
  6. 不能用作 generator 函数,不能使用 yeild 关键字
  7. 如果只有一个参数或返回语句时,语法可以简化去掉花括号
  8. 不能用 new 操作符会报错,也就是说不能用作构造函数
    1. 错误信息 fun is not a constructor
    2. new 操作符的原理
      1. 定义一个js 的对象 obj,【使用过 Object.create】
      2. 将 obj 的 __proto__属性【也就是\[prototype]】指向构造函数的prototype属性【使用 apply方法】
      3. 将 this 指向刚创建的 this,【使用 apply方法】
      4. 如果函数没有返回对象【返回值需要是对象】,就返回 obj 也就是 this
      5. 第二,三可以使用 apply 方法一行代码实现,参考手写new 操作符
    3. 上面的第2、3步,箭头函数没有原型对象,也无法设置this,所以会报错
相关推荐
猩猩程序员几秒前
将 LiteLLM 迁移到 Rust —— 构建最快、最轻量的 AI Gateway
前端
lichenyang4537 分钟前
JSBridge 分发升级:为什么要从 if-else 变成 Registry > 这是「ASCF 架构升级」系列的第 3 篇
前端
码上天下10 分钟前
流式响应断了,前端怎么自动重连续传
前端
anyup11 分钟前
来简单聊聊鸿蒙开发,万元奖金的事~
前端·华为·harmonyos
北凉温华20 分钟前
Univer 在线表格模块使用说明
前端
lichenyang45331 分钟前
WebRuntimePage 拆分:从大页面到运行时控制器
前端
竹林81841 分钟前
从报错到跑通:我用 @solana/web3.js 开发 Solana 钱包连接踩过的三个坑
前端
MariaH43 分钟前
Node中操作MySQL
前端
还有多久拿退休金44 分钟前
一个 var 让整个团队加班到凌晨——JS 闭包的那些暗坑
前端·javascript
weedsfly44 分钟前
用了 React/Vue 之后,这些 DOM 操作的坑你踩过几个?
前端·javascript