自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 c++ STL

它提供了一系列的模板类和函数,这些模板类和函数可以帮助程序员处理常见的数据结构和算法问题,比如链表、向量、栈、队列、集合、映射表以及排序和搜索等。STL提供了多种不同类型的容器,如向量(vector)、列表(list)、双端队列(deque)、集合(set)、映射(map)等。:适配器可以修改容器或函数对象的接口,例如将一个容器变成一个堆栈(stack)、队列(queue)或优先队列(priority_queue)。:算法主要是一些模板函数,用来执行诸如搜索、排序、计数、遍历等操作。

2024-05-05 15:26:45 160

原创 JavaScript值类型与引用类型的区别

理解这些差异有助于更好地管理数据存储、传递和操作,尤其是在处理大型或复杂的JavaScript应用程序时。引用类型包括:对象(

2024-05-05 13:11:13 310

原创 深入理解JavaScript中的setInterval和this

是JavaScript中的一个内置函数,它可以按照指定的时间间隔无限循环地执行一个函数。这听起来很简单,但是当你尝试在一个对象的方法中使用并且期望通过this访问对象的属性时,你可能会遇到一些意想不到的行为。this理解和掌握中this的行为对于编写可靠和可维护的JavaScript代码至关重要。通过上述方法,你可以确保this总是指向你期望的对象,从而避免一些常见的陷阱。

2024-03-15 14:52:18 442

原创 Vue父组件和子组件生命周期的执行顺序

在Vue中,组件的生命周期可以分为几个主要阶段:创建(creation)、挂载(mounting)、更新(updating)和销毁(destruction)。每个阶段都有相应的钩子函数,允许我们在特定时刻介入组件的行为。这个初始化过程确保了父组件能够在子组件准备就绪之前,完成自己的设置和渲染准备工作。这个顺序确保了子组件能够在父组件重新渲染之前,先更新自己的状态和视图。这个顺序确保了子组件能够在父组件完全销毁之前,先进行必要的清理工作。

2024-03-04 14:28:26 463

原创 使用nvm-windows在Windows下轻松管理多个Node.js版本

nvm-windows是一个Node.js版本管理工具,它允许你在Windows操作系统下安装和切换不同版本的Node.js。通过使用nvm-windows,你可以在同一台电脑上安装多个Node.js版本,并根据项目需求轻松切换。

2023-11-08 10:35:02 833

原创 使用Handsontable展示表格数据

Handsontable提供了丰富的配置选项,你可以根据你的需求进行配置,例如添加过滤器,下拉菜单等。在这个例子中,我们首先获取了一个id为’example’的DOM元素,然后我们在这个元素上创建了一个新的Handsontable实例。在你的Vue组件的methods或者mounted钩子函数中,创建一个新的Handsontable实例。在你需要使用Handsontable的Vue组件中,导入Handsontable。在你的Vue模板中,你需要添加一个容器来承载你的Handsontable。

2023-11-07 16:55:06 381

原创 使用JavaScript异步函数获取和去重数据

这段代码演示了如何使用异步函数和循环结构调用后台接口,并在获取完所有数据后进行去重操作。特别适用于需要时。

2023-11-02 17:44:32 128

原创 前端解压文件

以上就是在Vue.js中使用JSZip解压缩压缩包并获取其中的文件的详细步骤。通过这个方式,可以读取压缩包中的文件。在HTML模板中,可以添加一个文件选择的输入框,用于选择要上传的压缩包文件。在Vue.js中使用JSZip解压缩压缩包并获取其中的文件,可以按照以下步骤进行。接下来,创建一个方法,该方法将负责解压缩压缩包并获取其中的文件。首先,安装JSZip库。

2023-09-15 11:22:43 742

原创 git stash 用法

git stash是一个用于临时保存(“stashing”)工作目录中的修改的 Git 命令。这在需要临时切换到其他分支,但不想提交当前工作的修改时非常有用。

2023-09-06 16:28:02 888

原创 Axios中使用CancelToken取消请求

是一个用于取消请求的机制。它允许在请求还未完成时,通过取消请求来终止请求的发送。这在需要在某些情况下中止正在进行的请求时非常有用,比如文件上传时取消上传等。通过这个机制,可以更好地控制请求并在需要时进行取消。对象是很重要的,这样可以确保能够精确地取消特定的请求。注意:为每个请求都创建一个新的。这将触发请求被取消的逻辑,在。这就是在 Axios 中使用。

2023-08-31 17:35:12 650

原创 使用Axios中的onUploadProgress实现显示文件上传进度

Axios 是一个基于 Promise 的 HTTP 客户端,用于在浏览器和 Node.js 中进行 HTTP 请求。允许指定一个回调函数,在上传进度发生变化时被调用。这个回调函数接收一个进度事件对象作为参数,可以从中获取上传进度的信息。这对于跟踪文件上传的进度很有用,特别是在需要显示进度条时。通过计算这两个值的比例,可以得出上传的百分比,然后可以使用这个百分比更新用户界面。只适用于发送请求时的上传过程,不适用于下载过程。如果需要跟踪下载进度,可以使用 Axios 的。在这个示例中,当上传进度发生变化时,

2023-08-31 17:02:53 3593

原创 git add 用法

是 Git 的一个命令,用于将更改的文件加入到暂存区(staging area),准备提交这些更改。,Git 会自动忽略.gitignore中列出的文件和目录。的一些基本用法,Git 提供了很多其他选项和参数。(不包括未跟踪的文件)

2023-08-17 16:16:58 1019

原创 git commit用法

选项,Git 会打开一个文本编辑器(如 Vim、Nano 或其他默认编辑器)让你输入提交信息。保存并关闭编辑器后,更改将被提交。选项会自动将所有已经跟踪的文件的更改添加到暂存区,并进行提交。注意,这不包括未跟踪的新文件。的一些基本用法和选项。Git 提供了许多其他选项和高级功能,可以查看官方文档或使用。是 Git 版本控制系统中的一个命令,用于将更改提交到本地存储库。提交后,这将显示有关提交的统计信息,如更改的文件、插入的行数和删除的行数。这将允许你修改上一次的提交信息或合并新的更改到上一次的提交中。

2023-08-17 16:01:57 1524

原创 vscode中eslint的设置

【代码】vscode中eslint的设置。

2023-05-25 20:01:10 388

原创 如何在JavaScript中高效地删除数组中的空对象

在处理JavaScript数组时,我们经常会遇到需要从数组中删除空对象的情况。空对象,即没有任何属性的对象(例如{}),在数据处理过程中可能会造成不必要的麻烦。本文将介绍一种高效的方法来清理数组中的空对象,确保数据的整洁和准确性。

2021-09-18 14:31:45 1892

原创 antdv动态表单回显

在项目中经常遇到动态表单的业务。在编辑动态表单时需要回显新增后的内容。本文介绍Ant Design of Vue 的动态表单回显。比如新增时添加了两行动态表单,在第二次编辑时需要进行回显。下面是表单的HTML代码 <a-row :gutter='20' v-for="(k, index) in form.getFieldValue('keys')" :key="k" v-bind="index === 0 ? formI

2021-08-09 17:52:55 3593 2

原创 js使用获取到的数据动态生成表格

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document&l

2021-04-20 10:37:14 857

原创 Vue组件通信

vue子组件向父组件传值子组件向父组件传送值,主要是通过$emit方法来实现的子组件子组件通过$emit方法将数据发送给父组件,第一个参数表示在父组件中需要触发的函数名称,第二个参数表示要传递的值<template> <!-- 子组件 --> <div> <button @click="passData">将数据传递给父组件</button> </div></template><scr

2021-04-13 15:30:28 94

原创 判断给定日期范围内是否包含指定的星期几

函数首先将 startDate 和 endDate 转换为 Date 类型,并将 startDate 的时间部分设置为 0 点,将 endDate 的时间部分设置为 23:59:59.999。然后,函数使用一个循环遍历范围内的每一天,并使用 getDay() 方法获取该天的星期几。如果找到了指定的星期几,则返回 true。这个例子会输出 true,因为给定的日期范围内包含了 2023 年 4 月 22 日(周六)。在项目中遇到了一个需求,判断给定日期范围内是否包含指定的星期几。

2021-01-07 16:20:33 867

原创 JavaScript变量提升

js代码解析原则首先JavaScript引擎在读取JavaScript代码时会进行两个步骤,第一个步骤是解释,第二个步骤是执行。所谓解释就是会先通篇扫描所有的JavaScript代码,然后把所有声明提升到顶端,第二步是执行,执行就是操作一类的。变量提升把变量声明提升到当前执行环境的最顶端提升的部分只是变量声明,赋值语句和可执行的代码逻辑还保持在原地不动提升只是将变量声明提升到变量所在的变量范围的顶端,并不是提升到全局范围 function foo() { cons

2020-10-10 15:37:18 76

原创 JavaScript判断数据类型的方法

JS数据类型JS基本有5种简单数据类型:String,Number,Boolean,Null,Undefined。引用数据类型:Object,Array,Function。判断数据类型的方法typeof console.log(typeof 2); // number console.log(typeof true); // boolean console.log(typeof "str"); // string console.log(typeof u

2020-10-09 16:42:25 86

原创 get与post的区别

最直观的区别就是GET把参数包含在URL中,POST通过request body传递参数。GET在浏览器回退时是无害的,而POST会再次提交请求。GET产生的URL地址可以被Bookmark,而POST不可以。GET请求会被浏览器主动cache,而POST不会,除非手动设置。GET请求只能进行url编码,而POST支持多种编码方式。GET请求参数会被完整保留在浏览器历史记录里,而POST...

2020-08-14 16:35:09 63

原创 js中的this指向

在全局环境下,this 始终指向全局对象(window), 无论是否严格模式函数直接调用普通函数内部的this分两种情况,严格模式和非严格模式。非严格模式下,this 默认指向全局对象window而严格模式下, this为undefined对象中的this对象内部方法的this指向调用这些方法的对象,函数的定义位置不影响其this指向,this指向只和调用函数的对象有关。多层嵌套的...

2020-08-14 16:34:06 74

原创 JavaScript中4种常见的内存泄漏及避免方法

四种常见的JS内存泄漏1、意外的全局变量未定义的变量会在全局对象创建一个新变量,如下: function foo(arg) { bar = "this is a hidden global variable"; }函数 foo 内部忘记使用 var ,实际上JS会把bar挂载到全局对象上,意外创建一个全局变量: fun...

2020-08-14 16:33:20 461

原创 JS字符串方法

charAtcharAt() 方法可返回指定位置的字符。第一个字符位置为 0, 第二个字符位置为 1,以此类推. var str = "HELLO WORLD"; var n = str.charAt(6); console.log(n);//WcharCodeAtcharCodeAt() 方法可返回指定位置的字符的 Unicode 编码。字符串中第一个字符的位置为 0, 第二个字符位置为 1,以此类推。 var str = "HE

2020-07-04 16:19:48 266

原创 JS数组方法

indexOfindexOf() 方法可返回数组中某个指定的元素位置。该方法将从头到尾地检索数组,看它是否含有对应的元素。开始检索的位置在数组 start 处或数组的开头(没有指定 start 参数时)。如果找到一个 item,则返回 item 的第一次出现的位置。开始位置的索引为 0。如果在数组中没找到指定元素则返回 -1。 let arr = [1, 2, 3, 4, 5]; let a = arr.indexOf(3); console.log(a

2020-07-03 18:27:47 107

原创 短横线命名转换成驼峰命名

var s1 = “get-element-by-id”; 给定这样一个连字符串,写一个function转换为驼峰命名法形式的字符串 getElementById var s1 = "get-element-by-id"; var f = function (s) { return s.replace(/-\w/g, function (x) { return x.slice(1).toUpperCase();

2020-06-28 16:26:19 1208

原创 宏任务、微任务的执行顺序

宏任务、微任务的执行顺序执行顺序:先执行同步代码,遇到异步宏任务则将异步宏任务放入宏任务队列中,遇到异步微任务则将异步微任务放入微任务队列中,当所有同步代码执行完毕后,再将异步微任务从队列中调入主线程执行,微任务执行完毕后再将异步宏任务从队列中调入主线程执行,一直循环直至所有任务执行完毕。...

2020-06-27 16:05:05 1230

原创 计算机网络五层和七层模型

OSI是什么  OSI(Open System Interconnect),即开放式系统互联。 一般都叫OSI参考模型,是ISO(国际标准化组织)组织在1985年研究的网络互连模型。  ISO为了更好的使网络应用更为普及,推出了OSI参考模型。其含义就是推荐所有公司使用这个规范来控制网络。这样所有公司都有相同的规范,就能互联了。TCP/IP五层模型与OSI七层模型分别是什么TCP/IP五层...

2020-05-06 23:36:38 862

原创 Canvas和svg的区别

一、Canvas的特点:1.canvas通过javascript绘制图形(2D)例如: <script type="text/javascript"> var c = document.getElementById("myCanvas"); var cxt = c.getContext("2d"); cxt.fillStyle ...

2020-04-29 16:11:38 1356

原创 HTTP

HTTP是客户端和服务器端之间数据传输的格式规范,表示“超文本传输协议”。HTTP中有哪些请求方式(1)GET: 请求访问已经被URI (统一资源标识符)识别的资源,可以通过URL,给服务器传递参数数据。(2) POST: 传输信息给服务器,主要功能与GET方法类似,但传递的数据量通常不受限制。(3) PUT: 传输文件,报文主体中包含文件内容,保存到对应URI位置。(4) HEAD: ...

2020-04-27 10:58:42 106

原创 从输入URL到页面加载显示完成,这个过程中都发生了什么?

整个过程可分为4个步骤。(1)当发送一个URL请求时,不管这个URL是Web页面的URL还是Web页面上每个资源的URL,浏览器都会开启一个线程来处理这个请求,同时在远程DNS服务器上启动一个DNS查询。这能使浏览器获得请求对应的IP地址。(2)浏览器与远程Web服务器通过TCP三次握手协商来建立一个TCP/IP连接。该握手包括一个同步报文、一个同步-应答报文和一个应答报文,这3个报文在浏览器...

2020-04-27 10:23:45 406

转载 js中的值类型和引用类型的区别

1.JavaScript中的变量类型有哪些?(1)值类型(基本类型):字符串(string)、数值(number)、布尔值(boolean)、undefined、null (这5种基本数据类型是按值访问的,因为可以操作保存在变量中的实际的值)(ECMAScript 2016新增了一种基本数据类型:symbol )(2)引用类型:对象(Object)、数组(Array)、函数(Function...

2020-04-22 17:36:53 74

原创 async...await用法全解

async用于申明function异步,await用于等待一个异步方法执行完成先介绍async的用法:1、async函数返回一个 Promise 对象 //一个普通函数 function getData() { return "syy"; } console.log(getData()) //syy ...

2020-04-17 17:38:06 531

原创 js继承

a.借助构造函数实现继承function Parent(){ this.name='大明' }; Parent.prototype.say=function(){ alert(this.name);} function Child(){ Parent.call(this); //this表示Child,继承Parent的属性和方法 this....

2020-04-17 16:07:35 56

原创 数据库事物的ACID四大特性

A 原子性(Atomicity)就是把事物分割成像原子一样,表示我们事物需要细微的去控制。比如我给你转钱,里面有我扣钱,你到账。总不能我扣了钱,你没到账这种情况吧。所以就是指转账这个事物, 里面的所有环节哪怕一个出错,都需要事物回滚,就是一切回到之前那样。C 一致性(Consistency)一致性是指事务必须使数据库从一个一致性状态变换到另一个一致性状态,也就是说一个事务执行之前和执行之...

2020-04-17 10:03:58 679

原创 时间复杂度和空间复杂度

一、说明时间复杂度和空间复杂度是用来评价算法效率高低的2个标准,身为开发者肯定会经常会听到这2个概念,但它们分别是什么意思呢?其实这两个概念从字面意思上也能看出一二:时间复杂度:就是说执行算法需要消耗的时间长短,越快越好。比如你在电脑上打开计算器,如果一个普通的运算要消耗1分钟时间,那谁还会用它呢,还不如自己口算呢。空间复杂度:就是说执行当前算法需要消耗的存储空间大小,也是越少越好。本来计...

2020-04-06 11:28:10 132

原创 Promise

EMAScript6原生提供了Promise对象,它是用来处理异步操作的。它代表了某个未来才会知道结果的事件(通常是一个异步操作),并且这个事件提供统一的API,可供进一步处理。Promise对象有以下两个特点。(1)对象的状态不受外界影响。Promise对象代表一个异步操作,有3种状态,即Pending(进行中)、Resolved (已完成,之前版本称为Fulfilled) 和Rejecte...

2020-03-29 16:06:18 68

原创 JS实现随机选取10-100之间的不同的10个数字,存入一个数组,并降序排序

函数来获取10个不同的随机数,然后对这10个数字进行降序排序。这段代码首先定义了一个。

2020-03-29 10:49:29 2231

原创 Vue实现可以长按加/减号自增和自减的输入框

<!-- 可以长按加减号自增和自减 --><!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0">...

2020-03-28 21:15:00 1179

空空如也

空空如也

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

TA关注的人

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