1. parms 和async 你哪个用的多?能讲讲吗?
2. useState的原理
3. useEffect第二个参数比较复杂的时候,怎么处理,遇到过吗
5. 怎么实现懒加载
6. pc怎么做,文件上传和下载
7. 除了scroll-view,小程序分页怎么做
8. react、vue组件之间的传参,是怎么传的兄弟组件传参,redux、vuex说一下
10. 用例子说一下react生命周期实现的整个过程,如点击事件怎么执行哪一步到哪一步
11. 让你写一个后台的话,你倾向于react还是vue,为啥
13. react生命周期willconst
14. git 新建一个分支并切换
15. 👌🍓Es6
16. 深浅拷贝
19. hooks加了哪些新东西,有助于他性能的调优
20. 🍄react的虚拟dom讲一下
21. 🍄如果一个dom树是abc三层,如果把b删掉,dom树就变成了a和c,对于c来说是从之前的abc提上来的,还是生成的新的c,有想过这个问题吗?
22. 🍄每次遍历的时候,key比较重要,你对key的认知大概是什么样的了解?key的唯一性范围有要求吗?比如全局唯一还是什么?
23. 🍄对比算法了解过不?
25. useState的实现原理知道不
26. 登陆时,别人发给我一个页面,我登录状态怎么直接到别人发给我的那个页面?
27. 登录流程、免密登录、怎么做
28. 🍄虚拟dom
30. 数组去重。 平时自己去重的话,常用的是什么?是自己手写还是用什么好的方法?主要是想问loadsh
32. 302是临时重定向,你知道302浏览器是怎么实现重定向的吗?
后端把状态码设置为302,告诉浏览器一个新的地址,新的地址放在响应头里的location。浏览器发现是302之后,回会自动去响应头里去找location,去跳转。 34. 闭包是什么,会引发什么问题?
闭包的内存泄漏要怎么处理/变量不用了要怎么处理 - - 变量置为空。
一些常用的闭包场景。 37. 👌promise 捕获异常,除了.catch,除了try/catch,还有别的捕获异常的方法吗?
答案:再搜搜。.then里面可以传两个参数,第一个参数时回调,第二个参数可省略 - - 第二个参数传一个回调函数就说捕获异常的 39. 事件循环eventloop了解吗?什么是宏任务什么是微任务?
例子:promise.then{ console.log(1) }
setTimeOut(){ console.log(2) }
promise.then{ console.log(3) }。 1、2、3打印的顺序是什么
答案:1、3、2。宏任务在先,微任务在后。 44. 了解浏览器的垃圾回收机制吗? 45. cookie、loacl、session区别 46. 回流、重绘 47. useState是同步还是异步?异步 48. 放到setTimeOut里面是同步还是异步?
50. useRef用过吗?获取dom,除了获取dom还有别的用法吗? 51. 父组件点击确定提交的时候,才去获取到子组件的数据 - - -用useRef、foolwdRef、useInpadetehanl可以做到父调子数据。 52. PC端用的什么框架?用的umi、 53. umi的简易数据流useModal、needModal知道不? 54. 用过状态管理redux吗? 55. redux怎么解决异步? - - - useDesepater、useSlatter? 56. PC端权限的控制,这块做过吗? 57. umi里面对路由的权限控制是怎么写的?
60. es6里面的继承是根据什么来实现的,原理是什么?es6的类继承
61. 原型链理解吗?原型链的终点是什么?终点是null
63. 👌var arr = [1, 2, 3, 3, 4, 5, 5]; [...new Set(arr)]. - - - 返回什么数据类型 // 返回
64. async使用的规则和限制?
65. 事件捕获、事件冒泡
66. 如果在元素上绑定多个事件,抛出一个click事件,它的每个回调都会执行吗?
67. react里,什么是无状态组件?
68. function组件什么时候会重新render执行?
69. react的路由模式、对应的原理清楚吗?
70. ts知道不?泛型是啥?
72. react高阶组件,怎么实现一个高阶组件?参数的返回是什么?
73. 在什么情况下、实际开发中哪些场景 会实现一个高阶组件?
75. useEffcet第二个参数如果是空对象、空数组的时候,会导致无限循环,原因是什么?🍃
76. 在hooks函数里面怎么实现消抖方式?
78. useState和useReducer的区别是什么?
79. 怎么在componetent里面尽量少的去render、怎么做一下性能优化
80. useCallback、useMemo了解不?两者的应用场景有哪种?
81. react - PureCompontent和纯组件了解吗?
82. react - 性能优化去查查
83. webpack特性、了解不?
84. flex: 1,表示什么
86. 表单类型怎么实现,绑定主要用哪些功能
87. 👌package.json功能
88. 请求头属性,有啥
89. 装饰器的使用方式和作用范围
91. commonjs规范
92. webpack配置的东西
93. babel
94. 👌package.json里面的字段
96. js里的模块化规范
97. npm常见命令有哪些?删包怎么删除?
98. package.json里面有哪些常见字段啊?
99. npm run serve跑项目的话,跑到哪里?跑这么跑的?
100. Dependencies和devDependencies有啥区别?
101. 哪些包放在Dependencies,哪些包会放在devDependencies?
102. 检查代码风格的话,用哪个包?装到哪?
103. 代码构建会依赖什么工具?
104. webpack接触过吗?
105. webpack常见的loader和plugin有哪些?
106. bable了解过吗?转代码的
107. 执行npm安装react那个面试题,最后安装的时候啥
109. git常用命令是什么?
110. 项目的分支管理(这个别的面试也问了,分支管理,感觉没答对过)
111. 比如你们开发需求的时候,是怎么拉分支、怎么上传、怎么合分支,发布的话哪个分支这个过程,是什么
112. 切换到上线的分支,切换到开发的分支,你是怎么切的(应该是说命令)
113. 从哪里拉master分支呢?这个过程说什么?(没理解啥意思)
114. promise的那个面试题(一般这个看结果啥的,就说考promise和setTimeout,不能错,一般错了就认为你不会。不是说会一点点啥的,他们就认为你不会)
116. 说说对“在react中,一切都是组件”的理解
React采用组件化的思想,最小的组件单位就是原生HTML元素,采用JSX的语法声明组件的调用
React的虚拟DOM,就是一个大的组件树,从父组件层到子组件,在render函数中层层堆叠
从react-router v4开始,路由本身也是组件
各个库提供的hoc返回的也是组件,如withRouter、connect
React中的基础数据state props的传递也是以组件为基础
122. 受控组件和非受控组件
受控组件
表单组件的状态/数据只由state 维护 修改只能通过setState()来更新,
表单数据是由 React 组件来管理
非受控组件
使用ref来从 DOM 节点中获取表单数据。
表单数据将交由 DOM 节点来处理
131. 跨组件传参。context上下文;redux;还有别的嘛
132. context使用有什么缺点?优化方面的,会影响组件的更新;
133. redux的执行流程:
134. state值只能通过reducer修改,有没有通过其他方式修改?
135. 纯函数
136. react组件怎么获取dom?用useRef获取dom;除了ref有别的嘛
137. ref的写法:除了useRef,还有别的写法?类组件里面有ref的写法
138. useRef:除了获取dom之外,还能干啥?
139. 子组件控制父组件的dom是吗?
140. hooks里面是没有this的,像那种全局的变量,怎么办怎么处理?
141. redux太麻烦了
142. 比如防抖,setTimeout的值,你用什么来存setTimeout的值?可以用
143. useRef出现的原因之一就是:没有this,又要使用全局变量。在组件化的时候写全局变量,那样写不优雅。
146. class组件有哪些优化?
147. 👌实现深拷贝有哪些方式?
148. assign,$.extent,JSON,(JSON方法的缺点)
149. 主要想问loadsh的深拷贝,deep拷贝;
150. 👌暂时性死区时什么意思?
152. vue响应式原理,双向绑定原理、路由 ;过往的项目,
153. vue3和vue2 的区别
154. 递归
155. 倒计时 用户操作 数据库硬件 判断手机代码;
156. 搜索联想功能,
157. 实现promiss.all的原理,
158. 👌🍃数组扁平化
159. es6 Proxy 代码 多维数组合并;
160. 用promise封装一个settimeout的函数
161. axios 封装 设置请求 header;
162. vue.mixin策略;什么情况下布尔值返回false;e
164. 纯手敲代码:写个闭包
165. 二面的时候就是直接出了一个业务场景让实现一下,然后再就业务提成了一些细致化的问题,说了解决方案。
167. tab切换是如何封装的?
168. axios 二次封装?
169. webpack性能优化?
170. webpack loader与plugin区别?
171. webpack的核心内容?
173. vue 全家桶
174. vue的虚拟dom
175. react为什么用state进行数据绑定?
178. 合成事件。 解决浏览器的一些问题
179. 处理大量图片
180. 图片用懒加载,当前可视区域的计算
181. 👌🍃跨域: jsonp处理跨域;
182. webpack干啥用的:打包的;loder文件干啥用的:编辑的文件用loder转成浏览器是别的东西。
183. 启动项目:执行完npm run之后,到哪步进行什么操作?
184. 进入到package.json;
186. 版本里面各个数字的不同含义:1.15.2
第一个数字-主要版本-major version,1:表示有了个不可以和上个版本兼容的大的更改。
第二个数字-次要版本-minor version,15:表示增加了新功能,并且可以向后兼容。
第三个数字-补丁版本-patch version,2:表示修复了bug,并且可以向后兼容。
波浪符号(~):表示会更新到当前中间数字的最新版本。
比如:~1.15.2,表示会匹配到1.15.x的最新版本;但不会自动升级到1.16.0。
插入符号(^):表示会把当前库的版本更新到第一位数字的最新版本。
比如:^3.1.4,会更新到匹配到3.x.x的最新版本,但不会自动更新到4.0.0。
无论是 ^ 还是 ~ ,都不会自动修改 主要版本:major version。