lucifer 注: hooks 带来的优点一方面是赋予了函数式组件更多功能,使得其从功能上可彻底替代 class 组件。 另外一方面 hooks 创造了一种新的代码组织方式,和之前的 mixin 以及 render props 的出发点是相似的,但其注重相同功能的代码放到一块儿,使得代码逻辑复用多了一种选择。固然这其中有利有弊,因为篇幅限制,不在这里展开。
lucifer 注: 建议你们多讲几种,好比 useState, useCallback 等。
lucifer 注:推荐你们阅读 深刻理解redux
lucifer 注:其实就是 ast 的解析和转化,具体内容你们能够搜索下相关文章。
lucifer 注:没看到从下到上什么意思。 不过 loader 的执行顺序是借鉴了 compose,函数式编程中的 compose 的结合顺序就是从右向左,而功能相似的 pipe 则是从左到右,你们常见的 linux 管道(pipe)就是从左到右。
entry: { // 这里写什么 }
let a = [1, 2, 4] let b = a.map(v => { v= v*2 })
我先回答了 b = [1, 4, 8](脑子抽了,小学数学都算错),面试官问为何不是 [2, 4, 8],我说说错了😂css
而后又说这样不对,由于箭头右边有个大括号。前端
其实上面代码中 b 是 [undefined, undefined, undefined],面试官引导该怎么处理才能使 b 为 [2, 4, 8]。react
答案就是若是箭头右边是打括号,须要在大括号内加一个 return 返回就好了。即下面的代码:linux
let a = [1, 2, 4] let b = a.map(v => { v= v*2; return v; })
平时写 map 一直都没用过大括号,面试的时候才明白,我炸了!webpack
lucifer 注:推荐阅读我以前写的 《一文看懂浏览器事件循环》
具体工做地点看本身安排。杭州和上海。杭州主要负责算法平台的搭建和地图相关。技术栈是 React。web
面试官很和善,因为堵车来的较晚,还表示很差意思,面试时的感受本身较长时间没有面试水平下滑,菜得一批,map 中若是是大括号应该加上 return 都不知道,纠结了半天。整体仍是根据简从来提问的,因此一个好的项目相当重要,项目不在于多么宏大,而是本身真正独立作了哪些部分,有收获才是最重要的。面试
因为是秋招,整体面试难度偏低。多是一面的缘由,就连编程和算法题也没有。面试中的大多数问题都是常见的问题,中规中矩。你们查缺补漏便可。以后会给你们带来更多面经。算法
你们也能够关注个人公众号《脑洞前端》获取更多更新鲜的前端硬核文章,带你认识你不知道的前端。编程