前端面试题整理(一)

本文主要探讨了前端面试中常见的几个问题,包括Redux的工作原理、深拷贝的多种实现及其缺点、伪元素与伪类的区别、React组件引入React的原因、Vue不常用的生命周期钩子以及尾调用和尾递归的概念,旨在帮助开发者更好地理解和准备面试。
摘要由CSDN通过智能技术生成

1、redux原理

store是管理全局状态的,视图可以获取到store的状态,视图产生用户操作后会调用actionCreator的方法来生成一个action,将其dispatch派发给store
store会将当前的状态和此次的action交给reducer处理,reducer处理后需要返回新的状态,此时store就能得知数据的变化,然后回通知视图获取最新的数据

2、深拷贝方法及缺点

(1)使用递归实现的方式

代码逻辑复杂,性能差

(2)使用JSON的stringify和parse

1.对象中的方法属性会丢失
2.对象中值为undefined的属性会丢失
3.对象中有正则表达式、Error对象,则序列化结果将只得到空对象
4.对象中有NaN、infinity、和-infinity,则序列化的结果会变成null

(3)使用jquery中的extend属性

1.需要引用jQuery库
2.无法拷贝 对象中值为undefined的属性

(4)lodash中深拷贝

是递归方法分装,需要引入一个lodsh包

3、伪元素和伪类的区别

伪元素 : :after :before : selection :first-line

伪类: :link :visited :hover :active

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值