自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 [CSS] CSS 实现小球环绕效果

视频未审核通过, 后面在上传。

2023-06-17 17:03:14 509

原创 [web前端] 浏览端生成二维码

可以看到这里把二维码图片进行了 base64 编码, 在页面上进行了展示。

2023-05-17 11:03:07 261

原创 [剑指offer] 01数组中重复的数字

使用哈希表的思想, 利用 js 的空对象, 以数字作为key, 出现的次数作为 value。循环数组, 如果数字没出现, 在对象加入以该数字为key, value 为1, 如果出现, 则对 value ++, 判断 value 是2, 为2则表示出现重复, 返回该数字。

2023-05-16 19:38:28 112

原创 deepin 重置root用户密码

deepin 重置 root 用户密码, 忘记root用户密码

2022-09-21 17:01:42 2850

原创 [swiper] swiper内容切换自己无感知

swiper 内容切换, swiper 无感知

2022-08-27 17:48:30 914

原创 [javascrip]构造树形数据实现

【js】树形结构模拟实现

2022-08-23 23:52:52 180

原创 [算法]数组给定长度的所有排列

数组固定长度的所有排列组合

2022-07-01 21:02:04 151

原创 [网络] 前端大文件上传

前端大文件切片上传简单 demo

2022-06-27 11:31:30 91

原创 [scss] 混合指令

scss 混合学习

2022-06-26 17:24:03 430

原创 [css] 盒子水平垂直居中

居中分 2 个方向,一个是水平方向,一个是垂直方向。水平方向居中很简单,有 2 种常见的方式:设置盒子 margin : 0 auto:这种居中方式的原理在于设置 margin-left 为 auto 时,margin-left 就会被设置为能有多大就设置多大,所以盒子会跑到最右边,而设置 margin-right 为 auto 时,同理盒子就会跑到最左边。所以,当我们设置左右的 margin 都是 auto 的时候,盒子就跑到了中间,从而形成了水平居中。第二种常见的方式就是通过 display : fle

2022-06-07 23:58:24 115

原创 [js]var, let,const 的区别

let、var、const 的区别声明变量关键字汇总在 JavaScript 中,一共存在 3 种声明变量的方式:varletconst之所以有 3 种方式,这是由于历史原因造成的。最初声明变量的关键字就是 var,但是为了解决作用域的问题,所以后面新增了 let 和 const 的方式。作用域首先我们来了解一下作用域。ES5 中的作用域有:全局作用域、函数作用域,ES6 中新增了块级作用域。块作用域由 { } 包括,if 语句和 for 语句里面的 { } 也属于块作用域。v

2022-05-30 23:55:06 77

原创 [electron] 基础学习

文章目录quick-start主进程和渲染进程主进程和渲染进程的区别app 模块BrowserWindow 模块loadFile 方法loadURL 方法frame 配置resizeable 配置maxWidth, maxHeight, minWidth, minHeightshow 配置ready-to-show 事件show 方法, 控制窗口的显示webReference 配置setBounds 方法maximize 方法进程通信主进程使用 ipcMain渲染进程使用 ipcRenderer系统托盘Me

2022-05-30 23:48:07 156

原创 [electron] 基础学习

文章目录quick-start主进程和渲染进程主进程和渲染进程的区别app 模块BrowserWindow 模块loadFile 方法loadURL 方法frame 配置resizeable 配置maxWidth, maxHeight, minWidth, minHeightshow 配置ready-to-show 事件show 方法, 控制窗口的显示webReference 配置setBounds 方法maximize 方法进程通信主进程使用 ipcMain渲染进程使用 ipcRenderer系统托盘Me

2022-05-29 19:56:30 386

原创 [网络]常见的请求方法

请求方法的本质请求方法是请求行中的第一个单词,它向服务器描述了客户端发出请求的动作类型。在 HTTP 协议中,不同的请求方法只是包含了不同的语义,但服务器和浏览器的一些约定俗成的行为造成了它们具体的区别fetch('https://www.baidu.com', { method: 'haha', // 告诉百度,我这次请求是来嘿嘿嘿的});上面的请求中,我们使用了自定义方法heiheihei。虽然百度服务器无法理解这样的请求是在干什么,但这样的请求也是可以正常发送到百度服务器的。在实践中,

2022-05-26 23:41:49 151

原创 [vue] v-model

v-modle定义v-model即可以作用于表单元素, 又可以作用于自定义事件, 无论哪一种情况, 它都是一个语法糖, 最终会生成一个属性和一个事件作用于表单元素当其作用于表单元素时,vue会根据作用的表单元素类型而生成合适的属性和事件。例如,作用于普通文本框的时候,它会生成value属性和input事件,而当其作用于单选框或多选框时,它会生成checked属性和change事件。作用于自定义组件v-model 也可以作用于自定义事件, 当其作用于自定义组件, 默认情况下, 它会生成一个valu

2022-05-19 13:10:46 144

原创 [js] js 对象的遍历方式

文章目录对象属性划分for ... inObject.keys()Object.getOwnPropertyNames()Object.getOwnPropertySymbols()Reflect.ownKeys()对象属性划分原型属性对象自身可枚举属性对象自身不可枚举属性Symbol 属性// 原型属性const obj = Object.create({ bar: 'bar',[Symbol('s1')]: 's1' });// 对象自身可枚举属性obj.foo = 'foo';

2022-05-18 21:12:31 157

原创 [vue] 组件通信

父子组件通信绝大部分 vue 本身提供的通信方式, 都是父子组件通信prop最常见的组件通信方式之一, 由父组件传递到子组件event最常见的通信方式之一, 当子组件发生了某些事, 可以通过 event 通知父组件// father.vue// 子组件传递多个参数// 父组件必须使用 arguments 来接收<template> <div class="app-container"> 123 <TestComp msg="hello

2022-05-17 23:28:26 203

原创 [js] Object 和 Map 的区别

ObjectObject 是最常用的一种引用类型数据, 用于存储键值对的集合, 在 ECMAScript 1st 添加的MapMap 是键值对集合, 采用 Hash 结构存储, 在 ECMAScript 2015 版本里添加为什么新增 Map 结构共同点键值对的动态集合, 支持增加和删除键值对// Object 定义const obj = { a: 1, b: 2};// 添加obj.c = 3;// 删除delete obj.c;// Map 定义cons

2022-05-16 21:57:13 153

原创 [HTML] 文档声明

文档声明概念HTML 文档通常以文档声明开始,该声明的作用是帮助浏览器确定其尝试解析和显示的 HTML 文档类型。<!DOCTYPE html>文档声明并非一个 HTML 标签。它是一条“信息”,告知浏览器期望的文档类型可以看点, HTML 班班从最开始到最新的 HTML5, 中间经历了许多版本。不同版本最显著的差别支持的 HTML 元素是不同的, 所以需要告诉浏览器以哪一种类型方式来解析这个 HTML 文件。最新的 HTML5 的文档声明。<!DOCTYPE html&

2022-05-09 00:06:11 737

原创 背景与文字颜色互换小技巧

需求描述:导航栏布局要求: 一种是 白色背景, 橘黄色文字。 一种是橘黄色背景, 白色文字。示例:这里可以实现两套代码, 来应对这种情况, 下面分享一种更好的做法。代码实现// nav.nav { display: flex; .nav-item { border-bottom: 3px solid transparent; padding-bottom: 0.2rem; &.active { c

2022-05-06 12:54:45 611

原创 [CSS3 Flex布局]

传统布局基于盒模型, 依赖display属性、position属性、float属性什么是Flex 布局Flexible Box -> Flex, 意思是弹性布局。任何一个容器都可以指定为 Flex 布局.box { display: flex;}行内元素设置弹性盒布局后, 可以设置宽高。基本概念采用 flex 布局的元素叫做 flex 容器, 所有子元素称为弹性项目。弹性容器默认存在两个轴: 水平的主轴和垂直的交叉轴。弹性项目默认沿主轴排列。弹性容器的属性flex-di

2022-05-05 20:24:20 164

原创 [微信小程序] app.json文件

小程序全局配置文件 app.json{ // 可以使用的页面路径配置 "pages":[ "pages/index/index", "pages/logs/logs" ], "window":{ "backgroundTextStyle":"dark", // "navigationBarBackgroundColor": "#000", // 顶部背景颜色 "navigationBarTitleText": "我的微信", // 顶部标题内容

2022-05-05 14:37:14 200

原创 [scss 样式重置] 定义工具样式类,快速开发项目

variabel.scss 定义项目中常用的颜色、字体大小及启动布局公共变量集合// colors$colors: ( "info": #4b67af, "primary": #db9e3f, "white": #fff, "light": #f9f9f9, "gray": #999, "gray-1": #666, "dark_1": #343440, "dark": #222, "black": #000, );$border-color: #d4d9de;$base-font-size: 1r

2022-05-05 12:51:53 510

原创 【vue-awesome-swiper 轮播图】

安装npm i vue-awesome-swiper#3.1.3组件在vue中全局引入import VueAwesomeSwiper from 'vue-awesome-swiper'// require stylesimport 'swiper/dist/css/swiper.css'Vue.use(VueAwesomeSwiper, /* { default global options } */ )在 Home.vue 组件中使用<template> <d

2022-05-05 12:33:49 630

原创 【js getter,setter 属性覆写导致的死循环】

let person = {};person.name = '王';console.log(person);Object.defineProperty(person, 'name', { get() { return person.name; }, set(val) { console.log('person name changed'); person.name = val; }, configurable:

2022-03-27 13:59:28 404

原创 GDB调试报错 Source file is more recent than executable | 符号表与源代码文件对应错误

快速定位函数在调试程序链接的那个动态库中问题的背景今天在使用gdb调试程序, 在函数A处打断点, 在执行到断点时, 单步调试进入这个函数, 但是与预期的结果不同, 进入函数B中了, 没有进入到函数A中, 发截图给组内的大佬, 让仔细看 gdb 调试时输出的信息, 在查找后发现 gdb 中有出现如图中所出现的警告问题简单模拟复现新建test目录, 在test目录下新建三个文件, main.c, hello.c, hello.h内容如下使用gcc hello.c main.c -o hello -

2020-08-10 00:04:33 7119 1

原创 ssh 连接 Linux 超时自动

文章目录ssh 连接 Linux 超时自动$TMOUT 系统环境变量sshd 服务配置 (改方法测试后无效)ssh 连接 Linux 超时自动$TMOUT 系统环境变量判断是否设置了该参数echo $TMOUT如果输出空 或 0 表示不超时,大于0的数字 n 表示 n 秒没有输入超时修改变量的值vi /etc/profile将 TMOUT=num 改为 TMOUT=0让配置生效source /etc/profilesshd 服务配置 (改方法测试后无效)

2020-07-02 16:42:56 786

原创 Linux 的 history 命令显示时间

在实习的时候,正在执行测试用例,发现自己的机器的环境坏了,找部门大佬求助,发现在我跑测试用例的时候有人在同时使用这台机器跑自动化脚本,正常的 history 是不显示时间的,这个可以让你看到时间,比较容易定位你的环境是否被别人动过如何让 Linux 的 history 命令显示时间- 方法一导入环境变量 HISTTIMEFORMATexport HISTTIMEFORMAT="%Y-%m-%d:%H-%M-%S:whoami: "该方法退出系统下次登录时会恢复默认设置,如果想一直显示时间,需

2020-07-02 16:40:37 468

原创 开启MySQLbinlog日志--Centos7,mariadb5.5.6

binlog 就是binary log,二进制日志文件,这个文件记录了MySQL的所有DML操作。通过binlog日志,我们可以做数据恢复,做主从复制等。查看是否启用了日志mysql> show variables like ‘log_%’若log_bin对应状态是OFF,就进行下面的操作修改配置文件在Linux中配置文件一般在/etc/my.cnf中,修改时要切换...

2020-03-21 16:55:01 630

原创 QT5.5中使用lambda表达式的遇到的error

1开发环境Qt Creator, Qt5.52 遇到的问题今天在学习QT时,遇到一个error,在学习信号和槽函数时,在connect函数中,直接传入lambda表达式时,会报这样的错误代码示例 // 利用lambda表达式,实现点击按钮,关闭窗口 QPushButton* btn2 = new QPushButton; btn2->setText("...

2020-01-18 09:02:39 1104 2

原创 CSS基础

CSS基础为网页添加样式h1{ color:red; background-color:lightblue; text-align:center;}CSS规则 = 选择器 + 声明块选择器选择器:选中元素ID选择器:选中对应ID值的元素 (选中范围太窄)元素选择器:选中页面中匹配的所有元素 (选中范围太宽)类选择器:选中类名相同的元素 (推荐使...

2020-01-18 08:47:53 386

原创 HTML核心

HTML核心文章目录HTML核心第一个网页注释元素元素的嵌套标准文档结构语义化什么是语义化为什么需要语义化?文本元素hpspan [无语义]preHTML实体a元素href属性target属性路径的写法站内资源和站外资源绝对路径和相对路径图片元素img元素和a元素联用和map元素和figure元素多媒体元素videoaudio关于兼容性列表元素有序列表无序列表定义列表第一个网页注释注释为代...

2019-11-23 13:54:43 440

原创 HTML和CSS概述

HTML 和 CSS 概述文章目录HTML 和 CSS 概述语言术语什么是HTML?什么是CSS?执行HTML CSS版本和兼容性语言语言: 沟通的工具。人和人沟通的语言: 自然语言任何计算机沟通的语言: 计算机语言HTML + css + javascript = 网页术语术语可以降低沟通成本鸡你太美: 形容对方篮球打得特别好web*互联网w3c*万维网联盟,非盈利性...

2019-11-17 15:02:49 197

原创 C++:mutex库

一、C++的mutex库互斥量C++11中提供了std::mutex互斥量,共包含四种类型:std::mutex:最基本的mutex类。std::recursive_mutex:递归mutex类,能多次锁定而不死锁。std::time_mutex:定时mutex类,可以锁定一定的时间。std::recursive_timed_mutex:定时递归mutex类。1、mutex在多线程...

2019-07-04 18:04:10 15605 5

原创 C++:C++11的牛逼特性

一、列表初始化1.1 C++98中,标准允许使用花括号{}对数组元素进行统一的列表初始值设定。int array1[] = {1,2,3,4,5};int array2[] = {0};对对于一些自定义类型,却不行.vector<int> v{1,2,3,4,5};在C++98中这样无法通过编译,因此需要定义vector之后,在使用循环进行初始赋值。C++11扩大了用...

2019-07-03 16:10:48 30298 3

原创 I/O多路复用-poll的详解

既然已经有select实现IO多路转接了,为什么还要有poll?之前说过select有很多的缺点:而poll的出现解决了select的两个问题:1、可监控的文件描述符个数有上限2、参数即作为输入参数又做输出poll函数的声明:int poll(struct pollfd* fds, nfds_t nfds, int timeout)参数解释:...

2019-06-30 17:48:25 501

原创 I/O多路转接之select

一、什么是多路转接?什么是select?简单来说,select只做一件事,那就是等,等至少一个文件描述符的读写时间就绪。具体来说,系统提供select来实现多路复用输入/输出模型。select系统调用可以让程序监听多个文件描述符的状态变化。程序会在select在这里等待,直到被监视的文件描述符至少有一个发生了状态改变。...

2019-05-26 00:12:05 139

原创 高级IO:五种IO模型解析

一、阻塞IO阻塞IO:在内核将数据准备好之前,系统调用会一直等待,所有的套接字,默认都是阻塞方式。阻塞IO是最常见的IO模型。二、非阻塞IO非阻塞IO:如果内核还为将数据准备好,系统调用任然会直接返回,并且返回EWOULDBLOCK错误码。非阻塞IO往往需要程序员循环的方式反复尝试读写文件描述符,这个过程称为轮询。这对CPU来说是比较大浪费,一般只有特定场景下才使用。三、信号驱动I...

2019-05-22 12:41:17 253

原创 HTTP协议

协议协议是一种“约定”,socket api的接口,在读写数据时都是按“字符串”的方式来发送的。如果我们要传输一些“结构化的数据”该怎么办?应用层程序员写的一个个解决实际问题的,满足日常需求的网络程序,都是工作在应用层的。http分层解剖与HTTP有关的一些协议:在我之前的博客有总结,附上链接:TCP:https://blog.csdn.net/aixintianshideshou...

2019-05-18 22:14:28 187

原创 DNS、ICMP、NAT技术总结

DNSDNS是一个从域名映射到IP地址的系统;一、DNS的背景TCP/IP使用IP地址和端口号来对应网络上的一台主机的一个进程,但是IP地址并不好记;于是有了主机名(字符串),并且使用hosts文件来描述主机名和IP地址的关系。最初是互联网信息中心(SRI-NIC)来管理这个hosts文件,如果 每一个计算机向接入网络,或者想更改IP,都需要到信息管理中心去申请,其他计算机也需要定期更...

2019-05-16 16:54:14 1018

空空如也

空空如也

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

TA关注的人

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