自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 使用.jsx和.js文件书写react代码的区别

【代码】使用.jsx和.js文件书写react代码的区别。

2024-07-12 09:15:00 208

原创 React Hooks学习笔记

useMemo 接收2个参数,第1个参数为执行运算的函数,第2个参数为要监控的状态。有2个函数,第一个参数是要缓存的函数,第二个参数是一个数组 (响应值变化时更新函数)

2024-07-10 16:46:50 668

原创 SessionStorage和loacalStorage区别

SessionStorage中存储的数据在当前会话期间有效,即当页面关闭时数据将被清除。

2024-07-06 09:30:00 699

原创 JS中那些可以改变自身的Array API全解析

【代码】JS中那些可以改变自身的Array API全解析。

2024-07-05 09:00:00 260

原创 数组和对象在内存中的区别

一、内存分配方式数组在内存中是一段连续的存储空间,每个元素占据一个位置,这种连续存储方式使得数组的访问速度更快。 对象在内存中是以键值对的形式存储的,每个键值对都需要单独的内存空间,这种非连续的存储方式可能会导致访问速度相对较慢。二、数据操作方式数组提供了一系列内置方法,如push、pop、shift、unshift、slice等,方便对数组进行添加、删除、截取等操作。 对象通常用来表示实体的属性和方法,通过键值对的形式可以方便地访问和操作对象的属性。三、数据结构特点数组适合存储一组有序

2024-07-04 09:15:00 344

原创 解决高德地图标点密集问题

高德地图提供了地图标点聚合的功能,我们可以在调用API时设置标点聚合的参数,让地图自动将附近的标点进行聚合显示,减少地图上的标点密集情况。在调用API时,可以提供搜索功能,让用户可以根据关键词搜索需要的标点信息,然后在地图上显示相应的标点,帮助用户快速找到目标信息。根据用户的缩放级别和地图显示范围,可以调整标点的显示密度,让地图在不同层级下显示合适数量的标点信息,保持地图清晰度和可读性。

2024-07-03 08:45:00 302

原创 ts中的unknown、never、any的区别

在 TypeScript 中,any 类型可以被赋予任何类型的值,它是一种动态类型。使用 any 类型时,TypeScript 编译器将会关闭类型检查,这意味着可以对任何属性进行访问,调用任何方法,而不会受到编译器的限制。因此,any 类型可以被看作是 TypeScript 中的“逃逸阀”,在某些情况下可以用来解决类型不确定的问题,但也会降低类型安全性。

2024-07-02 09:00:00 448

原创 H5响应式布局实用技巧

Flexbox是CSS3的一种布局模型,可以方便地创建灵活的布局。通过设置容器的display属性为flex,可以实现弹性布局。在H5响应式布局中,建议使用相对单位(如em、rem、百分比等)而不是固定单位(如px)来定义尺寸,以便在不同设备上更好地适应。Viewport Meta标签可以帮助网页在移动设备上正确显示,并且允许页面根据设备宽度进行缩放。媒体查询是CSS3的一种技术,可以根据设备的特性(如屏幕宽度、设备类型等)来应用不同的样式。一、使用Viewport Meta标签。

2024-07-01 10:02:53 220

原创 深入理解事件委派和冒泡以及捕获

事件委派是一种常见的事件处理机制,通过将事件处理程序绑定到父元素上,来管理子元素的事件处理。当子元素触发事件时,事件会冒泡到父元素,然后由父元素上的事件处理程序来处理。这种机制可以减少事件处理程序的数量,提高性能,并且方便动态添加或删除子元素时的事件处理。

2024-06-26 09:15:00 396

原创 JS原型与原型链学习笔记

在JavaScript中,每个对象(除了null)都有一个原型(prototype)。原型是一个对象,它包含了共享的属性和方法。当你创建一个对象时,这个对象会自动拥有一个指向原型的内部属性__proto__。

2024-06-25 09:00:00 565

原创 防抖和节流

防抖是指在一段时间内多次触发同一事件时,只执行最后一次触发的操作。也就是说,如果在设定的时间内再次触发事件,计时会被重置。:适用于需要等待用户停止操作后再执行的场景,比如搜索框输入时,延迟一段时间后触发搜索请求,避免频繁发送请求。

2024-06-24 09:00:00 228

原创 懒加载和预加载的区别

懒加载是一种延迟加载资源的技术,即在需要的时候才加载资源,而不是在页面初始加载时就全部加载。这样可以减少页面加载时间和带宽消耗。

2024-06-23 09:00:00 427

原创 v-show和v-if的区别

v-if是Vue.js中的一种条件渲染指令,它根据表达式的真假来决定是否渲染DOM元素。当条件为真时,元素会被渲染到页面上;当条件为假时,元素不会被渲染。v-if是惰性的,即如果初始条件为假,元素不会被渲染,只有在条件为真时才会被渲染。

2024-06-22 09:15:00 259

原创 this和手写apply、call、bind函数

this的指向是在函数被调用时确定的,它指向调用该函数的对象。在不同的情况下,thisthiswindowthisthisthisthiscallapplybindthis。

2024-06-21 08:45:00 420

原创 前端打包工具——webpack和vite

Vite在开发阶段利用浏览器原生ES模块加载,实现即时热更新;在生产环境下会进行代码压缩和预构建优化。

2024-06-20 09:00:00 458

原创 CSS布局——Flex布局和Grid布局

在上面的代码中,.container是Flex容器,通过设置将其定义为Flex容器,并使用和属性将Flex项目在主轴和交叉轴上居中排布。.item是Flex项目,通过设置flex: 1;实现项目的灵活伸缩,并设置margin属性实现项目之间的间距。

2024-06-19 08:45:00 473

原创 深入理解JavaScript中typeof和instanceof的区别

typeof用于检查基本数据类型和函数类型,返回一个表示数据类型的字符串;而instanceof用于检查对象的原型链,返回一个布尔值表示是否是特定构造函数的实例。typeof适用于基本数据类型和函数类型,而instanceof适用于对象实例的检查。typeof返回的是字符串,而instanceof返回的是布尔值。typeof无法准确地判断null的类型,而instanceof可以准确判断对象实例的类型。

2024-06-18 09:00:00 1202

原创 vue中 key的作用与原理

在上面的代码中,我们使用了v-for指令来遍历items数组,并为每个li元素设置了唯一的key,即item.id。由于每个li元素都有唯一的key,Vue可以准确地追踪到每个元素的变化,只更新需要更新的部分,而不是重新渲染整个列表。在Vue中,当使用v-for指令进行列表渲染时,每个VNode都需要有一个唯一的key值。Vue通过比较新旧VNode的key值来确定VNode的变化情况,进而决定是否重新渲染该VNode。在Vue中,key是用于识别VNode的特殊属性。

2024-06-17 09:30:26 499 1

原创 http学习笔记——对WebSocket的理解

WebSocket是一种在Web浏览器和服务器之间建立持久连接的通信协议,它能够实现低延迟、高效率的双向通信。

2024-06-16 09:45:00 361

原创 http查看是否有缓存学习笔记

浏览器缓存机制是指浏览器在加载网页时将一些静态资源(如图片、CSS、JavaScript文件)保存在本地,以便加快页面加载速度和减少网络带宽消耗的一种技术。浏览器缓存机制分为强缓存和协商缓存两种方式。

2024-06-15 09:15:00 285

原创 解决前端js需要兼容谷歌报错问题

是document重复了,将代码改成这样,就可以了。属性用于访问窗口中的框架(frame)。对象代表浏览器中的一个窗口,

2024-06-14 09:00:00 252

原创 JS合并数组常用的三种方法

最常用最常用。

2024-06-13 09:00:00 153

原创 在项目中添加多国时区地图及实现多国时区时间(较保姆级教程)

首先,在项目中引入所需的库,这里我使用库来处理时区时间。

2024-06-12 09:00:00 253

原创 react学习笔记——不能直接操作dom

直接操作DOM可能导致React无法准确跟踪DOM的状态变化,影响虚拟DOM的diff算法性能,降低页面渲染效率。

2024-06-11 16:11:00 329 1

原创 JS中深拷贝和浅拷贝学习笔记

浅拷贝,指的是创建新的数据,这个数据有着原始数据属性值的一份精确拷贝。如果属性是基本类型,拷贝的就是基本类型的值。如果属性是引用类型,拷贝的就是内存地址。即浅拷贝是拷贝一层,深层次的引用类型则共享内存地址。

2024-06-08 10:15:00 372

原创 promise学习笔记

JavaScript 异步编程是处理长时间运行的任务而不会阻塞主线程的一种方式。JavaScript 是单线程的,这意味着一次只能执行一个任务。异步编程允许程序在等待耗时操作(如网络请求、文件读取、计时器等)完成时继续执行其他任务。

2024-06-07 09:23:33 694

原创 开发vue和h5移动端项目笔记(保姆级)

先建立一个项目名称的空白文件夹(以后用于存放项目),然后将它在VScode中打开,点击终端-新建。出现这个,我们按键盘的↓来选择最后一个Manually select features,然后回车。选择你的工程中希望使用的Vue.js的版本,我们选择 3.x 这项,然后按下回车。安装完成后,可通过以下命令检验vue-cli是否安装成功:vue -V。安装命令:npm install -g @vue/cli。执行以上命令后,将显示当前的vue-cli的版本号。一、安装vue-cli脚手架。

2024-06-05 20:11:57 207

原创 学习笔记——SpringMVC

SpringMVC是一种流行的Java Web框架,其基于MVC架构设计,提供了灵活的、高效的Web应用程序开发方式。

2023-11-24 09:11:13 949 1

原创 学习笔记——Spring AOP和事务

切面是Spring AOP中的一个重要概念,它定义了一组通知和切点的组合。切点是一个表达式,用来匹配目标方法的执行点。我们可以使用AspectJ的切点表达式来定义切点。切面则是通过注解或者XML配置来定义的,它将一组切点和通知绑定在一起。在定义切面时,我们需要使用@Aspect注解来标记切面类,并在切面类中定义切点和通知的方法。通知是在切点处执行的代码,它可以在目标方法执行之前、之后或者异常抛出时执行。Spring AOP提供了五种类型的通知:前置通知、后置通知、返回通知、异常通知以及环绕通知。

2023-11-15 21:12:57 130

空空如也

空空如也

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

TA关注的人

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