来吧es6面试题不容错过

80 阅读3分钟

es6新增哪些特性?

1.es6新增了promise(标题) 需要说什么是promise

promise是es6处理异步的一种方式,它的本质是一个对象,promise的参数是一个回调,回调有连个参数 resol 瑞死丽五 成功回调 reject 瑞窄科特 失败回调。它有三种状态分别为 初始状态pending 胖的 已完成fulfilled 浮费有特 已失败rejected 瑞窄科特得。 状态改变只有两种结果 完成或者失败。

promise处理错误的方式有两种 第一种在then中传递两个回调 第二个回调是错误回调

第二种方式是通过catch方式来实现

promise常用的api有 then ()处理回调函数 catch()捕获异常 还有两个常用的静态方法

Promise.all()一块处理多个promise请求,所有的请求都成功才成功。

Promise.race()一块处理多个promise请求,有一个成功就成功

es7中可以使用async实现异步处理,还有一个关键字await可以实现异步函数同步化

2.es6新增了模块化 需要说什么是模块化

根据功能封装模块 通过import导入 然后通过export导出

可以使用 export 导出也可以使用export default导出

我们使用import 来导入

export 和 export defualt的区别

  1. export 可以导出多个属性或者方法 ,需要用{}括起来 在用import接受的时候也得用{}接受

    2.export default是以整体的方式抛出,接受的时候只接一个

3.新增了class关键字 需要解释

class关键字是es5构造函数+原型模式创建对象的语法糖。创建类的方式 class 类名{构造函数和方法} 通过extends关键字实现继承。

需要录制的面试题:

1.  js的数据类型

2.js的数据类型判断

3.箭头函数与普通函数的区别

4.let const var的区别

5.promise

4.新增了箭头函数 再说箭头函数与普通函数的区别

箭头函数和普通函数的区别

  1. 普通函数存在着变量的提升,箭头函数没有

    2.普通函数的this指向,谁调用指向谁,箭头函数是在哪定义就指向谁

    3.普通函数可以当成构造函数,而箭头函数是不可以的

    4.箭头函数没有arguments,要接受所有的参数用...rest

5.新增了解构赋值 需要解释什么是解构赋值

解构赋值针对数组或者对象进行模式匹配,然后对其中的变量进行赋值。

let [a,b]=[1,2]

let {user}={user:“xiaosi”}

6.新增了let const关键字 需要说let const var的区别

  1. let var const的区别
  • let 是代码块有效 var是全局有效
  • let 是不能重复声明的 var是可以多次声明
  • let不存在变量的提升 var存在变量的提升
  • const存储简单数据类型存储的是常量

7.新增了简单数据类型symbol