2022年面试题之ES6
1. promise常用使用方法
Promise.all(iterable)
Promise.race(reason) [reɪs]
Promise.reject(reason) [rɪˈdʒekt]
Promise.resolve(value) [rɪˈzɒlv]
2. promise核心逻辑?(promise怎么实现then的链式调用的?)
promise的出现是解决回调地狱的问题。
then 是promise对象的方法,要实现 then 的链式调用,那么就需要在每一个then方法的执行完成时返回一个新的promise对象。返回的新的promise对象需要接收到上一个promise对象返回的结果也就是需要把 `successCallback(this.value)` 传递给新的 promise 对象的 resolve 。其中需要判断上一个 promise 对象返回的值是普通值还是 promise 对象,如果是普通值,直接执行 resolve,如果是 promise 对象就查看 promise 对象返回的结果,再决定走 resolve 还是 reject
3. ES6 新增了哪些新特性
① let 和 constlet 表示申明变量。const 表示申明常量,常量定义了就不能改了。对象除外,因为对象指向的地址没变。const 在申明是必须被赋值。两者都为块级作用域。
② 字符串模板
③ 数组解构
④ 函数的默认值
⑤ 箭头函数
⑦ for 循环
for of 遍历的是键值对中的值; for in 遍历的是键值对中的键
⑧ class类,原型链的语法糖表现形式
⑨ 导入导出
导入improt;导出export default
⑩ promise
Promise 用于更优雅地处理异步请求。
⑪ async/await
比promise更好的解决了回调地狱
⑫ Symbol,新的基本类型
⑬ Set集合
存储任何类型的唯一值,即集合中所保存的元素是不重复的。类数组结构。
let arrNew = new Set(待去重的数组)
4. ES6 中数组新增了哪些方法
① forEach(),用于遍历数组,无返回值;② filter(),过滤掉数组中不满足条件的值;
③ map(),遍历数组,返回一个新数组;
④ reduce(),让数组的前后两项进行某种计算,然后返回其值。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· 因为Apifox不支持离线,我果断选择了Apipost!