【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,所以会报错
相关推荐
xcLeigh11 分钟前
HTML5好看的水果蔬菜在线商城网站源码系列模板9
java·前端·html5·网页源码
星仔_X35 分钟前
硬件加速模式Chrome(Edge)闪屏
前端·chrome·edge
2501_9153738836 分钟前
使用 Vue + Axios 构建与后端交互的高效接口调用方案
前端·vue.js·交互
莫问alicia3 小时前
react + antd 实现后台管理系统
前端·react.js·前端框架·antd
七灵微5 小时前
ES6入门---第三单元 模块三:async、await
前端·javascript·es6
七灵微7 小时前
ES6入门---第二单元 模块五:模块化
前端·ecmascript·es6
m0_616188498 小时前
vue3 - keepAlive缓存组件
前端·vue.js·缓存
lh_12549 小时前
Uni-app 组件使用
前端·javascript·uni-app
Kx…………9 小时前
Day3:设置页面全局渐变线性渐变背景色uniapp壁纸实战
前端·学习·uni-app·实战·项目
Q_Boom10 小时前
前端跨域问题怎么在后端解决
java·前端·后端·spring