-面试题总结_umi.js面试题-程序员宅基地

技术标签: react.js  高频面试题  前端  react  typescript  javascript  

React

1.说说你对react的理解?有哪些特性?
2.说说Real DOM和Virtual DOM的区别?优缺点?
3.说说React生命周期有哪些不同的阶段?每个阶段对应的方法是?
4.说说React中setState执行机制?
5.说说react的事件机制?
6.React组件之间如何通信?
7.说说你对受控组件和非受控组件的理解?应用场景?
8.说说你对fiber架构的理解?解决了什么问题?
9.说说react diff的原理是什么?
10.说说你对redux中间件的理解?常用的中间件有哪些?实现原理?
11.reactJS的props.children.map函数来遍历会收到异常提示,为什么?应该如何遍历?
12.说说你对@reduxjs/toolkit的理解?和react-redux有什么区别?
13.说说Real diff算法是怎么运作的?
14.说说你对React中虚拟dom的理解?
15.说说你对react hook的理解?
16.React性能优化的手段有哪些?
17.说说React jsx转换成真实DOM的过程?
18.React render方法的原理,在什么时候会触发?
19.探究react的事件机制(合成事件)
20.说说你对koa中洋葱模型的理解?
21.React中key的作用是什么?
22.react-roter-dom中V5和V6区别?
23.说说Connect组件的原理是什么?
24.调和阶段setState干了什么?
25.说说redux的实现原理是什么,写出其原理的核心代码?
26.props和state相同点和不同点?render方法在哪些情况下会执行
27.react新出来两个钩子函数是什么?和删掉的will系列有什么区别?
28.React组件高性能之shouldComponentUpdate的作用
29.react路由动画切换(react 路由动画)
30.React 封装路由鉴权组件)
31.说说React生命周期中有哪些坑?如何避免)
32.知道react里面的createPortal么,说说其使用场景?
33.useEffect的依赖为引用类型如何处理?
34.说说react中onClick绑定后的工作原理?
35.说说React中setState和replaceState的区别?
36.在使用redux过程中,如何防止定义的action-type的常量重复?
37.redux-saga和redux-thunk的区别与使用场景?
38.!【】== ! 【】,!【】== 【】,结构是什么?为什么?
39.说说package.json中版本号的规则?
40.react-draggable实现拖拽详解
41.实现发布/订阅/观察者/单例模式
42.说说你对TypeScript装饰器的理解及其应用场景?

CSS

1.说说设备像素、css像素、设备独立像素、dpr、ppi之间的区别?
2.BFC的理解
3.清除浮动的几种方式?各自的优缺点?
4.如果需要手动写动画,你认为最小时间间隔是多久,为什么?
5.弹性盒中的缩放机制是怎样的【考核知识点:flex布局】

JavaScript

1.说说javascript内存泄漏的几种情况?
2.说说你对事件循环event loop的理解?
3.数组常用方法及作用,至少15个?
4.说说reduce方法的作用?自己手动封装一个reduce,写出其核心代码?

UmiJS

1.umi路由跳转和传参(基于React)
2.umijs登录鉴权
3.umi 路由切换动画的实现

数据结构

1.说说你对栈、队列的理解?应用场景?
2.如何通过原生js实现一个节流函数和防抖函数?
3.for…in循环和for…of循环的区别?

Git

1.Gitee的基本使用
2.Git安装教程
3.说说你对git rebase 和git merge的理解?区别?
4.将gitee上的项目拉取到本地

Web

1.说说如何借助webpack来优化前端性能?
2.说说你对webSocket的理解?
3.从浏览器地址栏输入url到显示页面的步骤?
4.介绍一下你对浏览器内核的理解?

Vue-Vuex

1.Vue组件通信?
2.说说你对vuex的理解?写出其原理的核心代码?
3.SPA(单页应用)首屏加载速度慢怎么解决?
4.Vue中自定义指令的理解,应用场景有哪些?

HTTP

1.什么是强缓存和协商缓存?

移动端

1.怎么做移动端适配?
2.移动端1像素解决方案
3.umi移动端如何对px进行适配,适应不同的手机屏幕?

其他

1.CDN的特点及意义?
2.谈谈你对immutable.js的理解

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/m0_65545080/article/details/128498108

智能推荐

造数据时踏过的坑-程序员宅基地

文章浏览阅读44次。1.在产生随机数时,在数据规模很大的时候很难出现自己要的模型,比如某个条件的数据量,此时要写一个方法,来造一批这样的数据2.将控制数量,文件路径写成配置文件的形式,以免重复打包3.输入输出文件夹,可以配置以免重复打包 ...

分析N沟道MOS管和P沟道MOS管在电路中的详细应用-程序员宅基地

文章浏览阅读7.5k次,点赞5次,收藏17次。   MOS管集成电路特点:  制造工艺比较简单、成品率较高、功耗低、组成的逻辑电路比较简单,集成度高、抗干扰能力强,特别适合于大规模集成电路。   MOS管集成电路包括:  NMOS管组成的NMOS管电路、PMOS管组成的PMOS管电路及由NMOS和PMOS两种管子组成的互补MOS电路,即CMOS电路。  PMOS管门电路与NMOS管电路的原理完全相同,只是..._n沟道mos管

低成本小车, esp32, micropython, wifi, 浏览器控制控制(四轮版)_远程控制wifi遥控小车-程序员宅基地

文章浏览阅读2.1k次,点赞5次,收藏29次。底成本小车, esp32, micropython, wifi, 浏览器控制控制(四轮版)_远程控制wifi遥控小车

安装modelsim 运行patch_dll.bat闪退不生成license_patchdll打开闪退-程序员宅基地

文章浏览阅读306次。将网络适配器中只留下一个自己用的或许有帮助。_patchdll打开闪退

MySQL 语法问题:You can‘t specify target table ‘xxx‘ for update in FROM clause. 原因及解决方法_you can't specify target table 't_bill' for update-程序员宅基地

文章浏览阅读429次。报错信息如下:[Code: 1093, SQL State: HY000] You can’t specify target table ‘bd_bankaccbas’ for update in FROM clause译文:不能在FROM子句中指定目标表‘bd_bankaccbas’进行更新。有问题的SQL语句如下,它在oracle数据库的语法是支持的,但是mysql就不支持直接这么写:from和update都是同一张表。<span style="col..._you can't specify target table 't_bill' for update in from clause

Spring Boot与消息(JMS、AMQP、RabbitMQ)-程序员宅基地

文章浏览阅读421次。为什么80%的码农都做不了架构师?>>> ..._@jmslistener rabitmq

随便推点

python3.7.3+cuda9.2安装pytorch_python官网cuda9.2-程序员宅基地

文章浏览阅读496次。不靠谱的博客太多了。。。网上各种方法搞得人头大,明明超级简单,但信息接收太多反而对心理造成极大负担我试了很多方法,包括各博客用清华源等等下载的、怎么离线安装、还有下载cudann啥的,其实重点很明确,就是确定自己的cuda版本和python版本,然后去官网复制命令安装。不知道折腾了这么久 我的电脑会不会有啥影响,众多没装成功pytorch会崩掉我的电脑吗。。下面是我的安装过程:先确定python版本win+R,输入cmd,打开命令窗口,然后输入python即可看到自己的版本确定是否有_python官网cuda9.2

【Springboot】基础业务学习笔记-程序员宅基地

文章浏览阅读419次,点赞12次,收藏10次。已有业务:全局业务异常处理、参数校验、基于JWT的登录认证、登录拦截器、Redis认证优化、分页查询

macbook 的 charles 使用-程序员宅基地

文章浏览阅读171次。1 安装在官网下载对应版本, 如果要破解,请找到破解用 charles.jar(charles用java写的),替换掉安装目录中 jar 文件2 取得管理权限下载证书pc移动端证书help -> proxy ssl -> 选择对应的选项,安装好选项,授权永久信任,再输入当前用户密,最后输入 grant 用户权限密码(如果自己的电脑无需)3 使用charles 配置..._macbook charles method connection

2023最新Android Studio安装、卸载、解决c盘占用教程_build configuration language-程序员宅基地

文章浏览阅读7.3k次,点赞30次,收藏133次。2023最新Android Studio安装、卸载、解决c盘占用教程,从安装到hello world运行_build configuration language

【论文精读】Temporally Refined Graph U-Nets for Human Shape and Pose Estimation From Monocular Videos-程序员宅基地

文章浏览阅读245次。摘要:这项工作解决了一个具有挑战性的问题,即从单目视频中估计完整的三维人体形状和姿态。由于现实世界的三维网格标记数据集有限,目前大多数的三维人体形状重建方法只关注单一的RGB图像,丢失了所有的时间信息。与此相反,我们提出了一种临时细化的图形网,包括图像级模块和视频级模块,来解决这一问题。imagelevel模块是用于从图像中进行人体形状和姿态估计的图U-Nets,其中图卷积神经网络(Graph CNN)有助于相邻顶点的信息交流,U-Nets架构扩大了每个顶点的接受域,融合了高层和低层特征。videolev_temporally refined graph u-nets for human shape and pose estimation from mon

ubuntu 安装完oracle之后没有sqlplus,Linux安装Oracle成功后,启动sqlplus问题集合(详解)...-程序员宅基地

文章浏览阅读2.0k次。注意:Oracle安装不能用root用户安装,必须新建用户安装1、 sqlplus命令不识别问题(bash :sqlplus command not found)当你首次安装oracle后,也许会出现这种情况,第一次或许有点棘手,不知道如何改怎么办。这时不用着急,想想Linux里面的命令是如何运行的,如adduser等,我们发现是因为在/bin/文件夹下有这样的一个文件adduser,于是我们也想..._ubuntu中oracle提示sqlpus: command not found

推荐文章

热门文章

相关标签