微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

es6新特性

let和const命令的出现
let和const区别:const定义一个只读常量,一旦声明变量,就必须立即初始化,不能留到以后赋值且不可改变。
不存在变量提升,声明的变量一定要在声明后使用,否则报错
不允许重复声明变量,不允许在相同作用域内,重复声明同一个变量
块级作用域,ES6之前只有函数作用域与全局作用域,一个大括号即一个块级作用域
声明的变量不在属于window

解构赋值

数组、对象、字符串等解构赋值的基本用法认值的设置
解构的用途
(1) 交换变量的值
(2) 接收函数返回的多个值
(3) 函数参数认值的设置
(4) 用于模块导入的按需加载
字符串的扩展

模版字符串
方法的增添 includes(),startsWith(),endsWith()…
正则表达式的具名组匹配

数值的扩展

完善二进制(0b开头)与八进制(0o开头)的表示
方法的移植与增加 将parseInt()和parseFloat()从window对象移植到Number对象上
指数运算符**

函数的扩展

函数参数认值的设置
箭头函数
使用箭头函数的注意事项:
(1)函数体内的this对象,就是定义时所在的对象,而不是使用时所在的对象
(2)不可以当作构造函数,也就是说,不可以使用new命令,否则会抛出一个错误
(3)不可以使用arguments对象,该对象在函数体内不存在。如果要用,可以用 rest 参数代替
3. rest参数
数组的扩展
扩展运算符
用途
(1)复制数组
(2)合并数组
(3)函数的rest参数
2. 方法的扩展Array.from()、Array.of()实例上的方法fill()、flat()
对象的扩展
属性以及方法的简洁表示
属性名表达式
可遍历性for…in、Object.key(obj)
super关键字增加
新增方法Object.is()、object.assign()

Module导入模块
讲到这一点就很有必要给面试官讲一下ES6模块与Commoonjs模块的差异

Commonjs 模块输出的是一个值的拷贝,ES6 模块输出的是值的引用。
Commonjs 模块是运行时加载,ES6 模块是编译时输出接口。
其他方面
promise与async的运用和理解,提及这里他接下来可能会问promise的实现,这也是一道常考题
Symbol数据类型
set和map结构
class

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐