自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 xshell断开与GPU服务器连接后,如何保持线程依旧运行

问题描述:这个GPU服务器,我使用xshell连接之后,当我把我的电脑关了之后,等一会再打开,xshell直接断开连接了,我的项目训练也就中断了。5、当你想要关闭 xshell 时,先按下 Ctrl + b,然后按下 d。这会将 tmux 会话放到后台,但你的项目仍在继续运行。6、当你再次连接到服务器时,运行 tmux attach 命令来重新连接到之前的 tmux 会话,你的项目状态将会和你离开时一样。4、在 tmux 会话中运行你的项目,就像你通常在终端中运行一样。2、在xshell中连接到服务器。

2024-04-11 19:00:33 287

原创 中文数据清洗

打算采用re第三方库来实现,进行正则匹配,首先可以将目录的文字组成字典(目录转成数组List),然后在正文中进行匹配切割(循环遍历上面的数组,匹配正文,然后从冒号后面开始截取,直接截取到出现下一个冒号结束,第二级目录同理),从而实现第一级和第二级目录的结构的恢复,第三级目录使用正则匹配(re库)匹配的形式为:‘.num.’,从该处进行截取,然后截取到下一个‘.num.’位置结束。在英文文本处理中,词干提取(Stemming)是将词语的词干或基本形式提取出来的过程,即去除单词的词缀,保留单词的核心部分。

2024-04-03 20:35:15 1263

原创 LeetCode刷题--20230912

创建三个指针分别指向传入的两个数组的第m个元素与末尾一个元素,第三个指针p指向nums1的最后一个元素,然后从p1与p2的位置开始向前依次比较两个数组的每个元素,每一轮p都递减。最后若p2还有没被扫描的元素,则依次放入nums1数组的前面。

2023-09-12 14:21:03 76

原创 LeetCode刷题----2023.09.06

算法思想:遍历数组,若该索引对应的值大于等于target,则直接进入下一轮循环,若小于target,则使用target-当前值得到预期的另外一个值,然后将该值与数组传入到searchHasOtherNum方法中,寻找是否含有该值,如果有,则返回值的索引,如果没有就返回-1。上级作用域内的变量,因为被下级作用域内引用,而没有被释放。就导致上级作用域内的变量,等到下级作用域执行完以后才正常得到释放(也就是说当解除了对该闭包的所有引用的时候,这个闭包才会被JS的垃圾回收机制回收)

2023-09-06 21:32:49 87

原创 前端基础知识3

Object.defineProperty 方法用于在对象上定义新的属性或修改现有属性,并且可以设置属性的特性(例如,可写、可枚举、可配置等)。内置对象的属性: 对于一些内置对象(如 Array、Date 等),Object.defineProperty 也无法监听属性的变化,因为这些对象的属性通常是内置的、无法通过普通方式重新定义的。数组的索引和长度: 对于数组对象,Object.defineProperty 不能监听数组的索引变化或长度变化,因为数组的索引和长度并不是普通的属性,而是特殊的内置属性。

2023-08-12 19:02:47 77

原创 前端基础知识篇2

前端面试题,html、css、js、ts、webpack、vue、网络、react、ajax

2023-08-12 00:19:00 53

原创 JS基础知识篇

在 CommonJS 中,模块的加载是同步的,模块被执行后,它的输出会被缓存,后续引用直接使用缓存的值。模块之间的连接: 当一个模块导入另一个模块时,JavaScript 引擎会自动执行被导入模块的代码,并且返回被导出的内容,使其在导入模块中可用。③将构造函数的作用域赋给新对象的 this: 此时,构造函数内部的代码会在新对象的上下文中执行,构造函数中的 this 指向新创建的对象。在 ES6 模块化中,模块的代码在导入时不会立即执行,只有在实际使用时才会被执行,导入的代码会被标记以便于后续执行。

2023-08-11 23:21:03 118

原创 JS的箭头函数和普通函数的区别

【代码】JS的箭头函数和普通函数的区别。

2023-08-11 00:26:09 42

原创 ES5如何实现继承

这是因为name是基本数据类型,如果属性是基本数据类型而不是引用类型,原型链继承就不存在共享属性问题,每个实例都会拥有独立的副本,也就是说m1.name = ‘m1’这句代码,会在当前m1的对象上新增一个name属性,然后赋值为’m1’,并不会影响到它原型上面的name属性,当打印m2.name的时候,因为m2本身没有name属性,那它就会去它的原型对象上去找这个属性,在这个例子中,也就是父类的name(‘kitty’)。原型链继承只能继承一个父类的属性和方法,无法同时继承多个父类,这限制了它的灵活性。

2023-07-25 16:42:26 599

原创 Js中的this上下文问题

对于const y = new obj.fn1(),因为fn1是一个箭头函数,它没有自己的构造函数,也没有自己的this值,素以在使用new运算符创建实例会报错。对于const x = new obj.fn2(),因为fn2是一个普通函数,new运算符可以正确的创建实例,并且this值指向新创建的实例对象(即是一个包含fn2方法的对象);对于箭头函数,它没有自己的this值,它会捕获上下文中的this,因此fn1中的this指向的是全局对象window(当开启严格模式时,指向的是undefined)。

2023-07-14 00:33:38 43

原创 今日练习:手写Promise及其API

【代码】今日练习:手写Promise及其API。

2023-07-01 16:49:48 35

原创 前端实现元素水平垂直居中的九种方式

好了,以上就是实现元素水平垂直居中的九种方式,亲自在浏览器中调试过了,都是没有问题的,具体代码文件已经上传。

2023-06-30 11:57:22 330

原创 Promise异步编程的应用

如果传入的可迭代对象中的任何一个 Promise 对象处于已拒绝状态,则 Promise.all 返回的 Promise 对象会立即处于已拒绝状态,并且它的拒绝原因是第一个被拒绝的 Promise 对象的拒绝原因。如果传入的可迭代对象中的所有 Promise 对象都处于已解决状态,则 Promise.all 返回的 Promise 对象也会处于已解决状态,并且它的值是一个与传入的 Promise 对象顺序相对应的值数组。每个异步操作的回调函数需要嵌套在前一个异步操作的回调函数中,使得代码结构变得复杂。

2023-06-29 16:30:21 37

原创 Vue的初始化过程都做了什么?

合并的结果是父组件的选项优先级高,子组件的选项会被合并到父组件的选项中,形成最终的组件选项对象。通过将内部组件的初始化逻辑单独提取为一个方法,可以提高内部组件实例化的性能,并避免对内部组件的选项进行不必要的处理。10.initProvide方法,用于初始化组件的Provide选项,其允许一个组件向其所有的子组件提供数据或者方法,这样子组件就可以通过inject来访问这些数据和方法。这个函数的意思:子组件的选项会通过合并方式添加到子组件实例的选项中,以便子组件能够继承和访问父组件的选项。

2023-06-27 23:35:13 466

原创 TS判断一个值是否为数组类型

它会返回一个类似于 “[object Type]” 的字符串,其中 “Type” 表示具体的数据类型,例如 “[object Array]”、“[object Object]”、“[object Date]” 等,但是,使用 typeof 和 Object.prototype.toString.call() 时,对于自定义的对象类型,都会返回 “[object Object]”,无法准确判断具体的自定义类型。它的 [[Class]] 属性为 “Object”,因为它本质上仍然是一个对象。

2023-06-27 00:21:46 2564

原创 算法:二叉树的构建(TS实现)

做了一层最基本的条件判断与处理,即如果传入的参数有值就进行递归处理成二叉树,若无值则直接return null 返回空树。数据结构如上图所示-----value用于存储节点的值,leftChild指向当前节点的左孩子,rightChild指向当前节点的右孩子,初始时,节点的左右孩子指针分别指为空。handleNode是用来实现构建二叉树的细节,以及深层次的递归处理,需要两个参数分别为:要转化的数组和当前处理的节点索引。这里我分成了两个方法:分别为buildBinaryTree、handleNode。

2023-06-25 23:55:06 168

原创 对于递归的通俗的理解

感觉递归的代码相对比较简洁,但是要注意正确写出递归的出口,否则容易爆栈;还有就是空间复杂度相对来说高一些。具体的应用以及算法:括号匹配,深度优先遍历(DFS算法),计算一棵树有多高等等。递归的思想还是挺重要的,应用挺多,比如树的遍历,图的遍历。

2023-06-23 21:15:10 31

原创 块级格式化上下文BFC(Block Formatting Context)

块级格式化上下文(BFC)是WEB页面的可视CSS渲染的一部分,是块盒子的布局过程发生的区域,也是浮动元素与其他元素交互的区域。具有BFC特性的元素可以看作是隔离了的独立容器(想象成一个独立的箱子),容器内的元素不会在布局上影响到外面的元素(你里箱子里面的物品如何怎么摆放都不会影响到外面),并且BFC具有普通容器所没有的一些特性,且同一个元素不可能同时存在于两个BFC中。

2023-06-23 00:40:16 362

原创 Javascript闭包与执行上下文

指的是那些引用了另一个函数作用域中变量的。

2023-06-22 20:51:27 46

原创 数据结构八大排序之快速排序算法

快速排序算法的性能在八大排序中算得上是优秀的。其平均时间复杂度是O(nlogn)。其中划分子表的时间复杂度是logn级别,对子表排序的时间复杂度是n级别。空间复杂度是O(n),开辟了三个长度为n的数组,总体为O(n)级别.

2023-06-21 15:15:13 101 1

原创 数据结构八大排序之冒泡排序算法

比较 5 和 6,不交换位置:[3, 5, 6, 2, 9, 1]比较 3 和 5,不交换位置:[3, 5, 2, 6, 1, 9]比较 5 和 6,不交换位置:[3, 2, 5, 6, 1, 9]比较 3 和 5,不交换位置:[2, 3, 5, 1, 6, 9]比较 5 和 3,交换位置:[3, 5, 6, 2, 9, 1]比较 5 和 2,交换位置:[3, 2, 5, 6, 1, 9]比较 5 和 1,交换位置:[2, 3, 1, 5, 6, 9]首先对传入的排序规则参数做一下约束,提高程序健壮性。

2023-06-20 16:16:54 58

原创 CSS Grid布局的使用

介绍之前,先了解一下该门技术的优缺点,看自己是否值得学习,优缺点如下:优点:CSS Grid布局是一种用于创建网页布局的强大工具。它引入了一个二维网格系统,可以以行和列的形式创建布局,提供了更灵活和精确的控制,并且减少了不必要的一些计算。缺点:兼容性问题:CSS Grid布局是在CSS3中引入的较新的特性,因此旧版本的浏览器可能不支持它或支持有限。

2023-06-17 19:21:06 399

原创 Vue的三种传值方式介绍

vue的三种基本传值方式介绍

2022-02-06 19:12:55 920

基于mpvue的医院预约挂号微信小程序

随着现代化信息技术在医疗服务行业广泛应用,移动终端程序使人们的就医问诊的方式发生了改变。本课题设计开发了一个网上预约挂号手机端小程序,旨在解决传统线下预约挂号的不足之处,提高患者就医体验并使医疗资源得到更充分的利用。实现就医患者足不出户就可以完成挂号,并可随时随地了解医生以及医院的最新动态和医生的相关信息。 本系统为C/S架构,使用微信的云数据库存储数据,使用微信开发者工具来预览效果,vscode来编写代码,以微信小程序的方式为用户提供服务,用户无需下载应用,即可体验。项目采用前后端分离模式。技术栈为:es6+mpvue+node+express+vant+flyio,其中前端用到的主要技术为mpvue框架+云开发;后端基于node与express框架开发。 本系统的主要功能有:疾病信息查询,网上挂号预约,医生信息录入,智能客服答疑,疫情出行政策查询,电子预约单的查看;论坛帖子。不同账号登录可自动区分出是否是管理员,并赋予相关的系统权限,对于用户的操作,系统都会给予用户相关提示。界面采用iOS风格进行设计,用户体验良好,对数据的加载采用了懒加载技术,因此系统响应较快。

2023-07-13

前端实现元素水平垂直居中的九种方式

前端实现元素水平垂直居中的九种方式

2023-06-30

CSS Grid布局的使用

CSS Grid布局的使用

2023-06-17

空空如也

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

TA关注的人

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