自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 面试题大全

css JavaScript vue react面试题

2023-05-12 11:54:16 161

原创 面试题分享

Keys是react用于追踪哪些列表中元素被修改,被添加或者移除的辅助标识;在开发的过程中,我们需要保证某个元素的key与其同级元素中具有唯一性。在react diff算法中react会借助元素的key值来判断该元素是新创建的还是被移动而来的元素,从而减少不必要的元素重渲染。此外react还需要借助key值来判断元素与本地状态的关联关系;setState 第二个参数就是一个回调函数,用于可以实时的获取到更新之后的数据。

2022-12-30 21:58:46 160

原创 前端面试题

响应式设计是一种网络页面设计布局,页面的设计与开发应当根据用户行为以及设备环境、系统平台、屏幕尺寸等进行相应的响应和调整,也就是说网站的布局会根据视口来调整模块的大小和位置。实现方式响应式设计的基本原理是通过媒体查询,检测不同的设备屏幕尺寸做处理,为了处理移动端,页面头部必须有meta声明viewport,使用百分比布局而不是使用固定单位,或者使用rem、vw/vh。rem:相对长度单位。r’是“root”的缩写,相对于根元素的字体大小。vh andvw。

2022-12-26 10:40:43 383

原创 TS中的泛型

当我们定义一个变量不确定类型的时候有两种解决方式:使用any使用any定义时存在的问题:虽然 以 知道传入值的类型但是无法获取函数返回值的类型;另外也失去了ts类型保护的优势使用泛型泛型指的是在定义函数/接口/类型时,不预先指定具体的类型,而是在使用的时候在指定类型限制的一种特性。

2022-12-17 12:11:27 190

原创 webpack的构建流程

等导入其它模块语句时,便将其加入到依赖的模块列表,同时对新找出的依赖模块递归分析,最终搞清所有模块的依赖关系。该对象是编译阶段的主要执行者,主要会依次下述流程:执行模块创建、依赖收集、分块、打包等主要任务的对象。在运行过程中会广播事件,插件只需要监听它所关心的事件,就能加入到这条。的运行流程是一个串行的过程,它的工作流程就是将各个插件串联起来。根据入口和模块之间的依赖关系,组装成一个个包含多个模块的。传入的入口依赖,使用对应的工厂函数。对象中,由于是入口文件,也会存入。中的模块,或者是动态引入的模块。

2022-12-10 07:55:35 1296

原创 为什么说HTTPS比HTTP安全? HTTPS是如何保证安全的?

实现完整性的手段主要是摘要算法,也就是常说的散列函数、哈希函数可以理解成一种特殊的压缩算法,它能够把任意长度的数据“压缩”成固定长度、而且独一无二的“摘要”字符串,就好像是给这段数据生成了一个数字“指纹”摘要算法保证了“数字摘要”和原文是完全等价的。所以,我们只要在原文后附上它的摘要,就能够保证数据的完整性比如,你发了条消息:“转账 1000 元”,然后再加上一个 SHA-2 的摘要。网站收到后也计算一下消息的摘要,把这两份“指纹”做个对比,如果一致,就说明消息是完整可信的,没有被修改可以看到,

2022-12-10 07:53:05 157

原创 什么是HTTP? HTTP 和 HTTPS 的区别?

传输的数据并不是计算机底层中的二进制包,而是完整的、有意义的数据,如HTML 文件, 图片文件, 查询结果等超文本,能够被上层应用识别。服务器处理完客户的请求,并收到客户的应答后,即断开连接。是一个传输协议,即将数据由A传到B或将B传输到A,并且 A 与 B 之间能够存放很多第三方,如: AXYZB。在计算机和网络世界有,存在不同的协议,如广播协议、寻址协议、路由协议等等......浏览器和网站服务器之间传递信息,以明文方式发送内容,不提供任何方式的数据加密。支持客户/服务器模式。

2022-12-10 07:36:55 215

原创 谈谈你对WebSocket的理解

首先,客户端发起http请求,经过3次握手后,建立起TCP连接;http请求里存放WebSocket支持的版本号等信息,如:Upgrade、Connection、WebSocket-Version等;然后,服务器收到客户端的握手请求后,同样采用HTTP协议回馈数据;最后,客户端收到连接成功的消息后,开始借助于TCP传输信道进行全双工通信。

2022-12-09 07:48:52 946

原创 说说webpack的热更新是如何做到的?原理是什么?

关于webpack通过创建两个服务器:提供静态资源的服务(express)和Socket服务express server 负责直接提供静态资源的服务(打包后的资源直接被浏览器请求和解析)socket server 是一个 websocket 的长连接,双方可以通信当 socket server 监听到对应的模块发生变化时,会生成两个文件.json(manifest文件)和.js文件(update chunk)

2022-12-09 07:36:13 231

原创 关于react的面试题(持续更新中...)

一个组件的显示状态可以与数据状态和外部参数决定,而数据状态就是state,当需要修改里面的值的状态的时候,就必须通过setState来改变,从而达到更新组件内部数据的作用,setState的第一个参数是一个对象,或者是一个函数,而第二个参数是一个回调函数,可以实时的获取更新之后的最新数据。iber架构的应用目的,按照react官方的说法,是实现增量渲染,所谓的增量渲染,通俗的来说就是把一个渲染任务分解为多个渲染任务,而后将其分散到多个帧里面,fiber架构核心:可中断、可恢复与优先级。

2022-12-08 16:45:45 650

原创 一些面试题

redux-logger:用于日志记录。虚拟dom不会进行排版与重绘的操作,而真实dom会频繁的排版与重绘,虚拟dom的总损耗是“虚拟dom增删改+真实dom的差异增删改+排版与重绘”它的优势是简单方便,如果使用手动的操作真实dom来完成页面,繁琐又很容易出错,在大规模的应用下维护起来也比较困难,性能方面使用虚拟dom能够有效的去避免真实dom树的频繁更新,减少多次引起的重绘与回流,从而的去提高性能;跨平台:react借助虚拟dom带来了跨平台的能力,一套代码多段运行;

2022-12-02 14:13:56 65

原创 阿瑟同款动态爱心代码

动态爱心

2022-11-09 14:21:17 852

原创 说说对webpack的理解?解决了什么问题?

理想的解决方式是,在页面中引入一个js入口文件,其余用到的模块可以通过代码的控制,按需加载进来,除了模块加载的问题以外,还需要规定模块化的规范,如今流行的是commonJS,ES Modules。上述的方式都是早期的解决模块的方式,但是仍然存在一些没有解决的问题,例如,我们是用过script标签在页面引入这些模块的,这些模块的加载并不受代码的控制,时间一久维护起来也是十分的麻烦。万物皆可模块能力,项目维护性增强,支持不同种类的前端模块类型,统一的模块化方案,所有资源文件的加载都可以通过代码。

2022-11-03 19:48:56 232

原创 vue生命周期的理解?

生命周期的概念应用很广泛,特别是在政治、经济、环境、技术、社会等诸多领域经常出现,其基本涵义可以通俗的理解为“从摇篮到坟墓”的整个过程在vue中实例从创建到销毁的过程就是生命周期,即指的是从创建、初始化数据、编译模板、挂载Dom→渲染、更新→渲染、卸载等一系列过程我们可以吧组件比喻成工厂里面的一条流水线,每一个工人(生命周期)站在自己的岗位上,当任务流转到工人身边的时候,工人就开始工作了。Vue生命周期总共可以分为8个阶段:创建前后,载入前后,更新前后,销毁前和销毁后,以及一些特殊场景的生命周期。

2022-10-19 08:30:00 428 1

转载 v-show和v-if有什么区别?使用场景分别是什么?

我们都知道在vue中v-show与v-if的作用效果是相同的(不含v-else),都能控制元素在页面是否显示在用法上也是相同的truefalse。

2022-10-18 19:01:47 307 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除