猿辅导前端一面
挂了,两道题都没做上来。
上来介绍了一下项目,然后是项目里用到了 cookie,就问还有哪些方式可以存,说了 localstorage,然后又问 localstorage 和 sessionstorage 的区别。
然后给了一个 classA
function ClassA() { this.name = 'classA' } const classA = new ClassA () ClassA.prototype = classA.__proto__ = classA instanceof ClassA true false
- new 出来的实例 this 指向哪
- 怎么修改 new 出来的 this 的指向(当时说的 new 出来的指向不能修改)
- 换了个问法,怎么在构造函数中修改 this 的指向。说了个借用构造函数也没说对不对
- ClassA 的 prototype 是啥,有啥
- classA 的 proto 是啥
- 原型链讲一下
- instanceof 什么时候返回 true,什么时候返回 false
- 怎么让 classA instanceof ClassA 返回 false
- js 里面异步的方式有哪些
// 写一个 cb2promise 函数,参数是一个函数,将 getUrl 转换成 getUrlPromise // callback (error, data) function getUrl(callback) function getUrlPromise(){} function cb2promise(fn) const getUrlPromise = cb2promise(getUrl); getUrlPromise.then(data=>{}).catch(err=>{})
// 写一个函数,将传进去的数组按深度展开 list:[1,2,[3,4],[5,6,[7,8],9],10,11] // depth 等于 1 时输出 depth = 1 :[1,2,3,4,5,6,[7,8],9,10,11] // depth 等于 2 时输出 depth = 2 :[1,2,3,4,5,6,7,8,9,10,11] function flattern(list,depth){ }
- 对框架有了解吗,对 css3 有了解吗,移动端适配讲了一下。平时除了看书还有哪些学习途径
应该凉了,毕竟两道题都没做出来
#猿辅导##前端工程师##面经##秋招##内推#