es6面试题总结

一.新增特性?

        1.新增了变量声明方式let和const

        与var的区别就是let和const都是块级作用域,var在window下声明的变量会挂载到全局,存在变量提升,let声明的变量只在一定范围内生效,不存在变量提升,先使用后声明的话会报错,const声明的是常量,必须声明的之后就赋值,且赋值之后不可被改变

        2.新增了数据类型

        es5中有六种数据类型,分别是string,number,boolean,undefined,null,object,但是es6新增了第七种数据类型symbol,symbol声明的值是唯一的,用来解决命名冲突的问题

        3.新增了扩展运算符: ...(三个点)

        用来数组的合并,数组的克隆,以及将伪数组变成真数组

        4.新增了模板字符串:``(反引号)

        可以直接用于变量拼接

        5.新增了数组的方法

        Array.from:直接转化为数组

        Array.of:将一串值转化为数组

        6.新增了promise (重点)

        promise是es6提供的一种异步解决方案,解决了回调地域的问题,所谓的回调地域就是当执行完一个操作之后再接收操作的值就要用回调函数来接收,这种方法臃肿还难维护,promise就是将嵌套改为了链式,更加方便,说白了就是一个容器,里面存放了了一个未来会完成的事件的结果(也就是异步操作),需要的时候就调用,有三种状态,pending进行中,resolve成功,reject失败,也给我们提供了两种方法,.all方法,可以将多个请求合并成一个请求,如果有一个出错,就报错,.race方法跟.all方法差不多,都是合并请求的,不一样的就是.race方法是哪个获取的快就先返回哪个

        7.新增了class类和继承

        es5中声明一个类要用构造函数创建一个类,es6直接就用class来声明,算是构造函数的语法糖,同时也提供了extends来继承父类的属性

        8.新增了模块化

        export 导出  import导入,es6中可以将代码分割成不同的模块,各运行各的的同时,还遵循commonjs规范,不会造成全局变量污染

        9.新增了数据结构set和map

        set是没有重复元素的类似数组的数据结构,特点是里面的成员值都是唯一的,没有重复,我们一般用来去重

        map是一个键值对的双列集合,特点是会遍历原数组,映射出一个新的数组

        10.新增了解构赋值

        es6允许一定程度上从数组或者对象中提取出变量赋值给其他变量

二..在项目中有哪些值得用es6去优化或者规范的?

答案参考上一题

        

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值