阅读:5539回复:1
前端关于ES6的面试题汇总含答案ES6全称是ECMAScript6,它可以帮助JavaScript语言成为企业级开发语言,编写大型且复杂的应用程序。在前端面试中,ES6也是一个经常出现的考点。本文整理汇总了ES6相关的面试题以及对应的参考答案,大家可以在面试前梳理一遍相关知识点,用最好的状态去迎接面试。
promise 是一个异步函数,主要是为了解决异步处理回调地狱(也就是循环嵌套的问题)而产生的。 promise 有 3 种状态,Fulfilled 为成功的状态, Rejected 为失败的状态,Pending 既不是 Fulfilld 也不是 Rejected 的状态,可以理解为 Promise 对象实例创建时候的初始状态,要会写 promise 这个方法。
2、ES6特性你了解多少?如果遇到一个东西不知道是ES6还是ES5,你该如何区分? 常用的es6新特性:let && const;let 命令也用于声明对象,但是作用域为局部; iterable 类型。为了统一集合类型,ES6 标准引入了新的 iterable 类型,Array、Map 和 Set 都属于 iterable 类型,具有 iterable 类型的集合可以通过新的for … of 循环来遍历。 es6 比 es5 增加了很多特殊的方法,如果你遇到了这些特殊的方法, 你就可以确定它是 es6。 如果你的代码中没有引用这些特殊的方法,那我们就可以认为他是es5 的。 所以前提你需要了解 es6 的语法才能做判断,高频使用的特性有箭头函数、解构赋值、let、const。
3、ES6 的继承和 ES5 的继承有什么区别?
es5 的继承是通过原型或者是构造函数机制来实现,es6 用过 class 关键字定义类,里面有构造方法, 类之间通过 extends 关键字实现,子类必须在 constructor 方法中调用 super 方法。
4、let 和 const 的优点?
let 和 const 有了块级作用域,变量声明不会提升相比于 var。
5、ES6 generator 是什么,async / await 实现原理?
generator 函数就是一个封装的异步任务,也就是异步任务的容器,执行Generator 函数会返回一个遍历器对象,async 函数的实现, 就是将Generator 函数和自动执行器,包装在一个函数里。
6、ES6 和 node 的 commonjs 模块化规范的区别。
ES6是Js的增强版,是Js的语法规范,commonjs 都只是为了解决Js文件之间的依赖和引用问题, 所以是一种Js的包管理规范,其中的代表是Node遵循commonjs规范。
7、箭头函数,以及他们的this。
所谓的箭头函数是在写法上面很简便和之前相比,类似于:(a,b)=>{returna+b;},箭头函数的 this 默认指向 在定义它时,它所处的对象,而不是执行时的对象, 定义它的时候,可能环境是 window(即继承父级的 this)。 以上就是前端关于ES6的面试题汇总以及答案。大家要是对于前端问题有人任何的问题,可以在线咨询,或是在留言板给我们留言。 |
|
沙发#
发布于:2020-03-17 22:58
|
|