自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 JavaScript的内存管理

JS中的引用即对象的变量。对象通过const、let或var创建对象的变量后,该变量存储在栈内存中,存储了指向堆内存中对象的指针,指针指向了该对象的内存地址,而不是像C++中的变量一样直接存储对象的内存地址。JS没有指针的概念,无法直接操作内存,但可以通过变量操作对象,间接操作内存。

2024-08-26 19:12:23 781

原创 用银行办业务类比JS的执行机制

6、postMessage、MessageChannel和BroadcastChannel的回调:它们通常会涉及到回调和异步处理,比如使用send()和receive()方法,它们会触发相应的回调,这些回调会被浏览器放入微任务队列中等待执行,会间接影响任务队列的调度。在异步任务的事件队列中,又分为宏任务和微任务,宏任务是普通客户,微任务是vip客户,他们分别站成两个不同的队,分为宏任务队列和微任务队列。同步业务遵循后来先办的原则,因为每个新来的同步任务客户会把文件放在最上面,工作人员会先办理后来的。

2024-08-23 18:34:05 517

原创 使用vh和rem实现元素响应式布局

vh和rem都是相对单位,它们能够根据视口大小或根元素的字体大小动态调整元素的尺寸,从而实现响应式布局。这对于适应不同设备和屏幕尺寸至关重要。vh(Viewport Height):vh是一个相对单位,代表浏览器窗口高度的百分比,例如20vh就是浏览器窗口高度的20%。rem(root em):rem是通过html根元素动态计算大小的,例如根元素的字体大小是 16px,1rem就等于16px。

2024-08-19 02:46:11 217

原创 JavaScript实现面向对象编程的基本原理

JavaScript 的面向对象编程(OOP)是一种使用对象来管理代码的方式。JavaScript是一种基于原型(Prototype)的语言,但本质上还是面向对象。原型本身也是对象,可以包含属性和方法,以支持封装、继承和多态面向对象编程的核心理念。以上是JS面向对象编程的基本概念,让你更加直观地理解JS是如何创建对象,实现面向对象的。

2024-08-19 02:09:10 504

原创 介绍js中this

this是js的一个关键字,this指向当前执行上下文中的对象。在不同的上下文中,this的值会有所不同。

2024-08-16 22:02:54 457

原创 浏览器发出请求到响应的过程

浏览器查看本地hosts文件是否有域名的IP地址映射,如果没有则向DNS服务器发起解析请求,获取域名对应的IP地址。:浏览器解析响应报文,根据响应内容进行相应的处理(如根据返回的JSON或HTML文档渲染页面)。:服务器接收请求,找到对应的处理程序,解析请求报文,执行业务逻辑,生成响应数据。:服务器构造HTTP响应报文,并通过TCP连接将响应报文发送给浏览器。:根据HTTP版本和连接头部信息,浏览器和服务器可能会关闭TCP连接。:用户输入URL并回车,浏览器解析URL,生成HTTP请求。

2024-08-15 20:02:16 214

原创 简单介绍BOM

BOM(Browser Object Model,浏览器对象模型)是Web开发中一个重要的概念,它提供了与浏览器交互的接口和方法。BOM不是Web页面的内容本身的一部分,而是浏览器为JavaScript提供的一个对象模型,用于访问和控制浏览器的窗口、导航、历史记录等功能。

2024-08-09 17:37:45 287

原创 简单介绍DOM

DOM将HTML或XML文档(网页)视为由多层节点(如元素节点、文本节点和属性节点)构成的结构化树(或视为一个对象),开发者可以通过JavaScript等脚本语言对这些节点进行增删改查操作。DOM的核心是document对象,它代表了整个文档,提供了访问和操作文档中每个元素和属性的接口(API)。

2024-08-09 17:21:35 260

原创 useReducer的用法

1、定义:是一个React Hook,允许你在函数组件中添加reducer以管理状态。2、作用:它提供了一种集中式和可预测的状态管理机制,尤其适用于复杂的状态更新逻辑。1、Reducer函数:一个纯函数,用于根据动作类型更新状态。它接受两个参数:当前状态和动作对象,返回新的状态。2、初始状态(可选):作为reducer的起始状态。如果没有提供,则reducer的第一次调用将使用作为初始状态。返回一个数组,包含两个元素:1、当前状态:表示应用或组件的当前状态。2、Dispatch函数:一个用于触发状态更新的函

2024-06-19 23:12:19 311

原创 react钩子函数用法(useCallback、useMemo)

的主要作用是返回一个缓存版本的函数,只有当它的依赖项发生变化时,这个函数才会被重新创建。这意味着,如果依赖项没有改变,函数的引用将保持不变,从而避免因函数引用改变而导致的不必要的重新渲染。缓存的是函数的返回值,而不是函数本身。因此,如果函数本身发生变化(例如,函数内部的逻辑被修改),即使依赖项没有变化,接受两个参数:一个是要被缓存的回调函数,另一个是该回调函数的依赖项数组。需要付出额外的开销,因为它涉及到存储和检索函数的机制。可以确保传递给子组件的回调函数引用保持稳定,从而防止不必要的重新渲染。

2024-06-19 22:59:10 726

原创 react钩子函数用法(useState、useEffect、useContext)

是 React Hooks 中的一个函数,它允许你在不使用组件嵌套传递的情况下直接访问 React 的 Context 值。第一个参数是一个包含副作用逻辑的函数,这个函数会在组件渲染后执行。4、异步操作:如果你在副作用中执行异步操作,确保正确处理异步逻辑,以避免在组件卸载后出现未处理的异步操作。是 React Hooks API 中的一个函数,它允许你在函数组件中添加局部状态。的第一个参数是一个函数,它包含了副作用的逻辑。,函数组件可以像类组件一样拥有和管理自己的状态,从而使得函数组件更加动态和可交互。

2024-06-19 22:38:05 967

原创 介绍react

React是一个用于构建用户界面的JavaScript库。

2024-06-13 00:29:53 1320 1

原创 React.cloneElement克隆组件

【代码】React.cloneElement克隆组件。

2024-05-28 13:17:29 175

原创 前端精确获取值的类型

【代码】前端精确获取值的类型。

2024-05-27 22:43:06 100

原创 设置环境变量,忽略yarn对node的版本检查

【代码】设置环境变量,忽略yarn对node的版本检查。

2024-05-25 16:00:30 668

原创 使用节流函数

【代码】使用节流函数。

2024-05-25 15:31:20 111

原创 把react元素转成dom元素

【代码】把react元素转成dom元素。

2024-02-23 15:01:59 535 1

原创 js判断字符串中是否包含数字

【代码】js判断字符串中是否包含数字。

2023-12-27 18:20:08 622 1

原创 点击antd的Table某列表头,升序、降序状态时给接口传不同的值

【代码】点击antd的Table某列表头,升序、降序状态时给接口传不同的值。

2023-12-22 20:49:20 575

原创 设置文字最大宽度,超出部分换行显示

【代码】设置文字最大宽度为200px,超出部分换行显示。

2023-12-18 19:41:48 497

原创 我的创作纪念日

提高了水平,收获了阅读量。希望未来能发展得越来越好。

2023-12-01 19:16:54 87

原创 js把格式为YYYY-MM-DD HH:mm:ss的时间转换为UTC时间ISO 8601格式

【代码】把格式为YYYY-MM-DD HH:mm:ss格式的时间转换为UTC时间格式。

2023-11-28 18:47:35 889

原创 前端判断一个值是否是JSON格式

【代码】前端判断一个值是否是JSON格式。

2023-11-28 18:47:07 449

原创 前端请求接口超时自动中止

以下代码用了AbortController的abort方法,调接口时间超过10秒没响应结果自动中止。

2023-11-10 18:56:51 382

原创 含有无效数据的js数组排序方法

使用:(data中含有没有group数据,直接sort不起作用)

2023-11-06 18:39:45 67

原创 设置Input防抖函数

【代码】设置Input防抖函数。

2023-10-27 17:25:57 76

原创 点击按钮,js数组升序降序切换方法

效果:点击按钮,arr升序、降序和原始数组循环切换。可以用在antd的Table组件里。

2023-10-10 18:25:22 349

原创 获取浏览器窗口可视区域的高度和宽度

这是浏览器窗口的内部高度,即可视区域的高度,不包括浏览器的工具栏、标签栏等非内容区域的部分。这是最常用的获取窗口可视区域高度的方法。这通常与窗口可视区域的高度相同,但是在一些情况下,可能会受到CSS样式的影响。然而,这种方法在某些浏览器和情况下可能会失效,因为。不可用,这个属性会尝试获取文档的根元素(通常是。: 如果前两种方法都不可用,这个属性会尝试获取。元素可能没有占满整个可视区域。另外,还可以计算对角线长度。解释:(以高度为例)

2023-08-22 19:24:44 1833

原创 我的创作纪念日

持续学习,持续提升个人能力,在拥有足够能力后,未来能承担更多任务,例如带新人、写文档等编码以外的事。

2023-08-19 21:02:23 155

原创 react用useEffect防止数据内存泄漏

以上代码确保初始化函数initData不会在组件卸载后继续执行。

2023-08-14 18:21:25 181

原创 前端项目打包报错JavaScript heap out of memory(js堆内存不足)

yarn build或者npm build出现类似以下报错。

2023-08-08 18:41:24 1940

原创 react使用懒加载优化性能和内存

【代码】react使用懒加载优化性能和内存。

2023-08-03 21:17:29 83

原创 react路由跳转后,获取url中拼接的id

以上方法,得到了infoId,就是123454321。

2023-07-12 19:45:00 414

原创 vue的v-model、v-if、v-for用react语法实现

3、遍历, 渲染出相应的Dom元素(v-for)2、判断Dom元素是否显示(v-if)1、双向数据绑定(v-model)

2023-06-26 20:00:00 738

原创 掌握这些,就能当react前端了

前端(Frontend)指的是Web开发中与用户直接交互的部分,包括用户界面的设计、用户体验以及与用户进行交互的功能实现。前端开发主要涉及使用HTML、CSS和JavaScript等技术构建网页,并通过浏览器来展示和运行。前端往往与后端(Backend)搭配工作,前端调后端的接口,并处理返回的数据,将数据显示在页面上。我目前是一名工作经验一年的前端开发工程师,学历大专,目前业余在北理工专升本,专业是计算机科学与技术。大专的专业是建筑室内设计,不转行就是在设计院工作。

2023-06-24 22:56:16 354

原创 antd的Table设置横竖溢出滚动条显示

在scroll设置y轴滚动条有时候不生效,所以直接设置表格样式,定死表格高度,纵向溢出部分显示滚动条,可以达到相似的效果。

2023-06-07 12:27:55 3420

原创 js对数组和对象的各种判断

判断对象数组中是否有属性值是数字(可用typeof 判断其他类型)判断对象数组中是否有属性值包含数字(通过正则判断)判断对象数组中是否存在年龄大于25的人。判断对象数组中的属性name是否唯一。判断对象数组中是否存在属性name。

2023-06-04 23:18:16 160

原创 如果对象数组中某个特定属性重复,则以此去重

下列数组arr,通过name进行去重,即使number也存在重复,但依然保留。

2023-06-01 12:52:14 122

原创 用await-to-js代替try-catch,以较少代码捕获请求报错

to函数有两个参数,第一个参数为错误,第二个参数为正常返回结果,当第一个参数存在时,则该请求产生报错,用if-else判断捕获异常时的操作。注:但当请求较为复杂,或者希望对多个请求捕获异常时,还是用try-catch更方便。安装await-to-js库,这个库只有370b,可放心引入。

2023-05-31 12:47:59 285

原创 把useState由异步变为同步

将useState的值赋给useRef,然后在useEffect初始化,就变为了同步。

2023-05-30 18:29:16 705

空空如也

空空如也

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

TA关注的人

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