千锋教育-做有情怀、有良心、有品质的职业教育机构

手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

当前位置:首页  >  技术干货  > web面试题:react面试题

web面试题:react面试题

来源:千锋教育
发布人:wjy
时间: 2022-06-06 14:22:00 1654496520

# react面试题-react不可变值如何理解?

在react中有一条铁律在修改状态时千万不能改变原来的状态state,怎么理解这句话呢?比如 在组件状态state中定义一个数组arr:[1,2,3,4],后面每次点击一个按钮,都给原数组加个100,可以用 this.state.arr.concat(100) 这样不会改变原来的数组arr,r如果用push就会改变原来的值。

web面试题react面试题

## react面试题-react合成事件是什么?

`React` 根据 `W3C` 规范定义了每个事件处理函数的参数,即合成事件。

事件处理程序将传递 `SyntheticEvent` 的实例,这是一个跨浏览器原生事件包装器。它具有与浏览器原生事件相同的接口,包括 `stopPropagation()` 和 `preventDefault()` ,在所有浏览器中他们工作方式都相同。

`React` 合成的 `SyntheticEvent` 采用了事件池,这样做可以大大节省内存,而不会频繁的创建和销毁事件对象。

另外,不管在什么浏览器环境下,浏览器会将该事件类型统一创建为合成事件,从而达到了浏览器兼容的目的。

**合成事件对象(react event)**

- 所有事件都挂在到document上
- event不是原生的,是syntheticEvent合成事件对象
- 和vue事件不同和dom事件也不同

web面试题:react面试题

react为何要合成事件机制?

1. 更好的兼容性和跨平台

2. 挂在到document,减少内存消耗,避免频繁解绑

3. 方便事件统一管理(如事务机制)

 

# react面试题-在项目中哪些会命中batchUpdate哪些不会命中呢?

哪些能命中batchUpdate机制?

生命周期和他调用的函数,react注册的事件和他调用的函数,react可以管理的入口 命中的就是异步。

哪些不能命中batchUpdate机制?

setTimeout setInterval和他调用的函数,自定义dom事件和他调用的函数,react管不到的入口 没命中就是同步。

更多关于web培训的问题,欢迎咨询千锋教育在线名师。千锋教育拥有多年IT培训服务经验,采用全程面授高品质、高体验培养模式,拥有国内一体化教学管理及学员服务,助力更多学员实现高薪梦想。

tags:
声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。
10年以上业内强师集结,手把手带你蜕变精英
请您保持通讯畅通,专属学习老师24小时内将与您1V1沟通
免费领取
今日已有369人领取成功
刘同学 138****2860 刚刚成功领取
王同学 131****2015 刚刚成功领取
张同学 133****4652 刚刚成功领取
李同学 135****8607 刚刚成功领取
杨同学 132****5667 刚刚成功领取
岳同学 134****6652 刚刚成功领取
梁同学 157****2950 刚刚成功领取
刘同学 189****1015 刚刚成功领取
张同学 155****4678 刚刚成功领取
邹同学 139****2907 刚刚成功领取
董同学 138****2867 刚刚成功领取
周同学 136****3602 刚刚成功领取
相关推荐HOT