ES6面试题:(第二天)

目录

6.使用箭头函数应注意什么?

7.什么是Promise?

[8.理解 async/await以及对Generator的优势](#8.理解 async/await以及对Generator的优势)

[9.Promise 和 async/await的区别](#9.Promise 和 async/await的区别)

10.说说js的异步编程的解决方案


6.使用 箭头函数应注意什么?

1、箭头函数本身没有this,它的this指向父级上下文

2、箭头函数内部没有arguments对象,可以使用rest参数代替

3、不能用作构造函数,这就是说不能够使用new命令,否则会抛出一个错误

4、没有propotype原型属性

7.什么是Promise?

什么是Promise?

  • promise是异步编程的一种解决方法。
  • 所谓promise,简单说是一个容器,里面保存着一个异步操作的结果,从语法上说,promise是一个对象,从它可以获取异步操作的消息,promise提供了统一的API,各种异步操作都可以用同样的方法进行处理。
  • 比传统的解决方案------回调函数和事件------更合理且更强大。

Promise的用途?

  • 主要用于异步计算
  • 可以将异步操作队列化,按照期望的顺序执行,返回符合预期的结果,所以promise链式调用解决回调地狱。

8.理解 async/await以及对Generator的优势

  • async await 是用来解决异步的,async函数是Generator函数的语法糖
  • 使用关键字async来表示,在函数内部使用 await 来表示异步
  • async函数返回一个 Promise 对象,可以使用then方法添加回调函数
  • 当函数执行的时候,一旦遇到await就会先返回,等到异步操作完成,再接着执行函数体内后面的语句

9.Promise 和 async/await的区别

promise和 async/await都是解决异步编程的一种方式,但是async/await使得异步代码看起来像同步代码。

函数前面多了一个async关键字。await关键字只能用于async定于的函数内。async函数会隐式地返回一个Promise,该promise的resolve值就是return的值。

10.说说js的异步编程的解决方案

1.JS 异步编程进化史:callback -> promise -> generator -> async + await

2.async/await 函数的实现,就是将 Generator 函数和自动执行器,包装在一个函数里。

3.async/await可以说是异步终极解决方案了。

相关推荐
xiangyun6123 分钟前
【408数据结构 08】队列:循环队列判空判满,408年年考,一次讲清
c语言·开发语言·数据结构·c++·算法
xiangyun6135 分钟前
【408数据结构 06】双链表、循环链表、静态链表
c语言·开发语言·数据结构·c++·算法
计算机魔术师1 小时前
Dario Amodei 发文呼吁为前沿 AI 降速并提出三点计划
前端
计算机魔术师2 小时前
OpenAI的AI代理偷偷给RubyGems下毒,我们却毫无察觉
前端
甲维斯2 小时前
0代码,0建模,3句话开发一个3D游戏!
前端·游戏·游戏开发
IT_陈寒2 小时前
Vue的响应式更新把我坑惨了,原来问题出在这
前端·人工智能·后端
白远山2 小时前
家政服务家政社区派单实战:调度系统架构设计与实现指南
java·开发语言·小程序·架构·需求分析
tingke2 小时前
别再堆 AGENTS.md 了:前端团队的 Agent 上下文分层落地指南
前端
DevRay3 小时前
Java 21虚拟线程深度实战:告别线程池焦虑,百万并发吞吐量直接翻倍(原理+代码+避坑)
java·开发语言
李明卫杭州3 小时前
React 复合事件系统对比解析
前端·javascript·react.js