自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(35)
  • 资源 (6)
  • 收藏
  • 关注

原创 1. Haas python 轻应用 Esp32开发板 温度传感器使用

Haas python 轻应用 Esp32开发板 温度传感器使用 初级入门

2022-07-31 17:41:55 1020 1

原创 js中一些常用的正则

let reg=new RegExp();电话号码:let reg=/^1[35789]\d{9}$/身份证号:let reg=/^[1-9]\d{16}[\dX]$/ /^\d{17}(\d|X)$/18-65年龄:let reg=/(18)|(19)|[2-5][0-9]|[6[0-5]]/密码校验:/^(.*_)(.*\d)(.*[a-z])(.*[A-Z]).{5,9}/模板字符串: let str = '你的名字是{{name}},年龄是{{age}},性别是{{sex}}' le

2021-09-02 09:18:19 325

原创 人类高质量JS防抖与节流机制

一.速识防抖:Hello呀,大家好????????????。防抖与节流可谓是面试常见,其实很好理解,下面带你分分钟了解防抖与节流的基本思想与写法~在这之前,比如我们先定义一个按钮,并绑定一个点击事件,执行要触发的事件:<!-- 定义一个按钮 --><input type="button" id="btn" value="按钮" /><script>// 获取标签 var btn = document.getElementById("btn");// 绑

2021-09-01 16:04:28 245 1

原创 面试官:如果你访问一个网站很慢,怎么排查和解决?

在计算机网络的应用层你了解多少,是否知道socket套接字有哪些?知道你的网站为什么访问慢吗?知道为什么fidder、Charles能抓到你的包吗?今天我们就来一一揭秘!一、socket()套接字有哪些?套接字(socket)是网络中不同主机上的应用进程进行双向通信的端口的抽象,网络进程通信的一端就是一个套接字,不同主机上的进程就是通过套接字发送数据报来进行通信的,如TCP协议使用主机的IP地址+端口号来作为TCP连接的端点,这个端点就是套接字。套接字主要有以下三种类型:流套接字(SOCK_S.

2021-09-01 10:47:05 952

转载 JavaScript 运行机制解析

引言在一些面试中,我们或许会被问到这样的问题简述一下 JavaScript 的运行机制?还有可能会被问这样的代码setTimeout(function () { console.log('定时器开始啦')});new Promise(function (resolve) { console.log('马上执行for循环啦'); for (var i = 0; i < 10000; i++) { i == 99 && resolve(

2021-08-26 09:35:34 120

原创 Windows CMD常用命令大全(值得收藏)

1. 常用命令1.1 cd命令//进入d盘D://进入F盘F:cd /? //获取使用帮助cd \ //跳转到硬盘的根目录cd C:\WINDOWS //跳转到当前硬盘的其他文件d: //跳转到其他硬盘cd /d e:\software //跳转到其他硬盘的其他文件夹,注意此处必须加/d参数。否则无法跳转。cd.. //跳转到上一层目录1.2 查看目录文件//查看当前目录下的文件,类似于linux下的lsdir

2021-08-23 15:17:40 15273

原创 HTML+CSS+JavaScript 迷宫生成算法

使用HTML,CSS和JavaScript制作一个简单的迷宫生成小代码。迷宫生成有很多种算法,今天给大家展示的是钻孔法(道路延伸)。1 首先将数组所有属性都设置成为墙。2 进行道路挖掘,在数组中进行道路属性值设置。每次随机选择点打桩,在打桩数据旁边进行延伸路径,向上、向下、向左或向右看前方两个方格。如果那不是通道,则延长道路,如果无法延长道路,此时从现有道路中随机选择点(但 X 和 Y 坐标偶数的点)并延长道路。3 重复步骤2的操作并用道路填满整个屏幕,完成迷宫。钻孔法的特点算法的特点是

2021-08-20 10:50:56 543 1

原创 自定义ES6提供的变异方法(forEach、filter、map、some、every、find、findIndex)

原理部分JavaScript 在ES6版本后提供了一些更加便捷的方法供开发者使用,实现原理其实是在对应的构造函数原型提供方法。然后供开发者使用。接下来让我们自定义这些ES6提供的简易函数吧。变异方法的实现原理ES6提供的一些方法,底层主要是用for循环实现的,咱们在使用过程中也主要是传递callback来控制输出结果。后边的实现也主要是下边的结构。Array.prototype.xxx = function (callback) { if (callback && typeo

2021-08-18 16:34:41 158

原创 你还是只会console.log吗?强大的功能语法?

1、输出信息  console.log('消息内容!'); //输出普通信息  console.info('消息内容!'); //输出提示信息  console.error('消息内容!');//输出错误信息  console.warn('消息内容!'); //输出警告信息2、数据表格化 var thisObj = [    { name: 'quber', email: '[email protected]', qq: 757200834 },    { name: 'xm', ema

2021-08-17 09:33:41 108

原创 Java直接运行JavaScript代码或js文件

执行JavaScript用到的类有: javax.script.ScriptEngine; javax.script.ScriptEngineFactory; javax.script.ScriptEngineManager; javax.script.ScriptException;需求1:执行一个JavaScript字符串,将结果打印在控制台上。ScriptEngineManager m = new ScriptEngineManager();//获取JavaScript执行引擎S

2021-08-13 09:39:24 4903

原创 vue中动态引入js的脚本内部或外部 js遍历map js通过xpath获取dom节点

vue中动态设置(创建)javascript的script 标签&js脚本内容&外部js详解动态通过src引入// 创建script标签,引入外部文件let script = document.createElement('script')script.type = 'text/javascript'script.src = 'http://xxx.xxx.js'document.getElementsByTagName('head')[0].appendChild(script

2021-08-13 09:32:08 866

原创 深入理解JavaScript 中的迭代器

Iterator 迭代器Iterator 是一种接口,为各种不同的数据结构提供统一的访问机制。任何数据结构只要部署 Iterator 接口,就可以完成遍历操作。1. Iterator 的作用为各种数据结构,提供一个统一的、简便的访问接口使得数据结构的成员能够按某种次序排列ES6 创造了一种新的遍历命令 for…of 循环,Iterator 接口主要供 for…of 消费。2. Iterator 的工作原理创建一个指针对象,指向当前数据结构的起始位置第一次调用next方法时,指针指向数.

2021-08-13 09:09:05 467

原创 Java基础知识之反射机制简介

1、什么是Java反射机制?在程序运行中动态地获取类的相关属性,同时调用对象的方法和获取属性,这种机制被称之为Java反射机制下面给出一个反射的简单例子:import lombok.Data;@Datapublic class User { public String username; private String password; @Override public String toString() { return "User{"

2021-08-12 10:03:44 127

原创 JavaScript中的数据类型转换 NaN

一、判断数据类型的两种方法:1、 typeof (检测的数据) var a = "hello world"; var b = 6.5; // 检测a的数据类型 console.log(typeof(a)); //string //检测a,b的数据类型 console.log(typeof(a),typeof(b)); // string number2、typeof 检测的数据 var a = "hello world"; v

2021-08-12 09:25:16 802

原创 JavaScript 统计出现次数最多的字符次数

判断一个字符串'aabcdobdackoppz'中出现次数最多的字符,并统计其次数首先我们需要了解一个知识点:(如何判断对象里有该属性)// 有一个对象,来判断是否有该属性 // 写法:对象['属性名'] var o = { age : 18 , sex : '男' } if(o['sex']){ console.log('里面有该属性'); } else { console.log('没有该属性

2021-08-11 14:22:12 147

转载 js原型链机制

转发原博文地址:js原型链机制https://blog.csdn.net/luo1831251387/article/details/119491381

2021-08-11 09:45:21 131

原创 JavaScript深拷贝和浅拷贝

文章目录一、理解拷贝二、浅拷贝(shallow clone)对象浅拷贝数组浅拷贝三、深拷贝对象数组深拷贝一、理解拷贝拷贝分为:基本数据类型和引用数据类型的拷贝。浅拷贝:拷贝了基本数据类型,和对象数据的引用;深拷贝:拷贝了基本数据类型,和对象数据;在JavaScript中我们定义的简单数据类型会存到栈(stack)内存中,包括引用类型的指针,而这个指针指向的地方是在堆(heap)内存中。也通常理解为,简单数据类型存在栈中,引用数据类型存在堆中二、浅拷贝(shallow clone)浅拷贝只能

2021-08-11 09:41:15 82

原创 js 数组合并

js 数组合并需要将两个数组合并成为一个的情况。比如:var a = [1,2,3];var b = [4,5,6];有两个数组a、b,需求是将两个数组合并成一个。方法如下:1、concatjs的Array对象提供了一个叫concat()方法,连接两个或更多的数组,并返回结果。var c = a.concat(b); //c=[1,2,3,4,5,6];这里有一个问题,concat方法连接a、b两个数组后,a、b两个数组的数据不变,同时会返回一个新的数组。这样当我们需要进行多次的数组合并

2021-08-10 16:26:58 441 1

原创 nginx 常用全局变量

nginx 常用全局变量变量说明$args请求中的参数,如[www.123.com/1.php?a=1&b=2的KaTeX parse error: Expected 'EOF', got '&' at position 10: args就是a=1&̲b=2](http://www…args就是a=1&b=2)$content_lengthHTTP请求信息里的"Content-Length"$conten_typeHTTP请求信息里的"

2021-08-09 11:36:53 112 1

原创 为什么会有跨域的问题出现,如何解决跨域问题

为什么会有跨域的问题出现,如何解决跨域问题什么是跨域​ 定义: 跨域是指a页面想获取b页面资源,如果a、b页面的协议、域名、端口、子域名不同,所进行的访问行动都是跨域的,而浏览器为了安全问题一般都限制了跨域访问,也就是不允许跨域请求资源。注意:跨域限制访问,其实是浏览器的限制。理解这一点很重要!!!​ 指的是浏览器不能执行其他网站的脚本,它是由浏览器的同源策略造成的,是浏览器对javascript 施加的安全限制,防止他人恶意攻击网站.​ 比如一个黑客,他利用 iframe 把真正的银行登录

2021-08-09 10:55:03 2092 2

原创 vue开发中使用axios的post方法传递参数springmvc接受不到参数

vue开发中使用axios的post方法传递参数springmvc接受不到参数背景: 前后端分离项目中, 前端vue项目使用axios发起请求。 spring的controller中习惯使用@requestMapping注解,发现使用post请求时,后端接口不使用实体无法接受到参数, 前端参数必须经过处理才能接受到。 get请求在参数格式不对的情况下,也会导致controller无法接受到参数。post请求参数需要特殊处理主要和请求头的格式有关, 如:application/x-www-form-ur

2021-08-08 11:09:27 83 1

原创 ArrayList原理底层是如何实现的

ArrayList原理底层是如何实现的你每天都在用的ArrayList,你真的了解它吗?关于Java的ArrayList懂多少???文章目录ArrayList原理底层是如何实现的1.为什么需要ArrayList?2. ArrayList底层是如何实现的?3. 结合源码分析主要成员变量4.ArrayList扩容机制1.先从 ArrayList 的构造函数说起2.一步一步分析 ArrayList 扩容机制2.再来看看 ensureCapacityInternal() 方法3、ensureExplicitC

2021-08-08 10:59:28 376 1

原创 HashMap 扩容 加载因子

HashMap 扩容 加载因子最近在看HashMap源码,对于扩容因子=0.75感到很费解,为什么在用了75%的容量的时候就要进行扩容呢?数组中明明还有25%的空间没有使用。为什么不等到数组几乎满了(扩容因子=0.95)的时候才进行扩容?扩容因子=0.95和扩容因子=0.75有什么区别吗?​ 首先来看一下什么是扩容因子。假设hash函数是理想的,数据会通过hash函数均匀的映射到数组上。一个数据映射到每一个桶(bucket)的概率是相等的。那么在任意的数组容量下,put一个数据发生碰撞的概率=数组中元素

2021-08-08 10:51:11 930

原创 4.element 穿梭框性能优化

element 穿梭框性能优化背景穿梭框处理大数据量时,由于渲染的 DOM 节点过多,造成页面卡顿的问题。 在尽量不改变组件原有逻辑的前提下,进行优化。解决思路懒加载 - InfiniteScroll 组件先从 packages/transfer 中将原组件拷出(或者改源码重新打包维护私有库使用)将v-infinite-scroll="pageDown":infinite-scroll-immediate="false"添加到<el-checkbox-group

2021-08-05 10:02:24 1014 1

原创 nginx路径正则匹配规则

Nginx 路径匹配规则Nginx路径匹配符号= 表示精确匹配^~ 表示uri以某个常规字符串开头,大多情况下用来匹配url路径,nginx不对url做编码,因此请求为/static/20%/aa,可以被规则^~ /static/ /aa匹配到(注意是空格)。~ 正则匹配(区分大小写)~* 正则匹配(不区分大小写)!~ 区分大小写不匹配!~* 不区分大小写不匹配/ 任何请求都会匹配location [=|~|~*|^~] /uri/ { }符号优先级首先匹配 =,其次匹配^~,

2021-08-04 10:52:13 2532

原创 gitHub上搜索项目的方法

如何在github上精准找到你想要的项目不知道小伙伴们一开始接触github有没有这样的一个疑问,当我们想找一个vue的后台管理项目时,你可能只会打开github网站,在搜索栏直接输入vue,会看到一堆的结果,这时你找了几页都没发现你需要的,你可能就直接放弃了。我一开始也和上述一样的,所以每次在github都找不到我所想要的,经过我多年的百度经验,于是:开源项目的组成部分开源项目一般都会有这些组成部分:name:项目名description:项目的简要描述项目的源码README.md:项目

2021-08-03 16:53:23 607 1

原创 ES6新特性简要说明

ES6新特性本文只做了简要说明,详细请查看下面这篇文章原文链接1.let和const命令var 定义的变量有时候会成为全局变量(显然变量i的作用域范围太大了)let所声明的变量,只在let所在的代码块内有效。const声明的变量是常量,不能被修改;类似于Java中的final关键字。字符串扩展字符串APIincludes(“xxx”):返回布尔值,表示是否包含xxxstartsWith(“xxx”):返回布尔值,表示是否以xxx开头endsWith(“xxx”):返回布尔值,

2021-08-03 09:29:33 64

原创 对象数组去重高级 reduce

对象数组去重用ES6的reduce方法this.backTag = [ {id:'111',name:'哈哈哈1'}, {id:'222',name:'哈哈哈2'}, {id:'333',name:'哈哈哈3'}, {id:'444',name:'哈哈哈4'}, {id:'111',name:'哈哈哈5'}];let obj = {} this.backTag = this.backTag.reduce(function(item, next) {

2021-08-02 15:22:27 92

原创 3.call_apply_bind用法和区别

call、apply、bind 的用法以及区别1.共同作用改变this的指向2.区别之处call、apply的区别:接受参数的方式不一样。call 接收多个参数Function.call(obj,[param1[,param2[,…[,paramN]]]])apply 接收一个数组列表Function.apply(obj[,argArray])bind:不立即执行。而apply、call 立即执行。Function.bind(thisArg[, arg1[, arg2[

2021-07-31 11:41:54 79

原创 2.idea使用less转微信wxss

idea使用less转微信wxss作为java后端开发者平时使用的工具是强大的idea,使用习惯了之后,便不再习惯使用其他开发工具了,尤其是各种软件的快捷键各不同,给开发者也带来了很大不便.由于最近在写微信小程序的时候要转为wxss,使用less转wxss的教程特此记录一下.1.全局安装less// 前提是你已安装了nodenpm install -g less2.安装file watchers打开idea, file–>setting–>plugins搜索file wa

2021-07-30 22:44:10 753

原创 js数组转为树形结构及树形结构数据扁平化

JavaScript Array、Object、数组树形结构转换、对象等数据转换及处理总结JS 对象转数组Object.entries()方法返回一个给定对象自身可枚举属性的键值对数组,其排列与使用 for…in 循环遍历该对象时返回的顺序一致(区别在于 for-in 循环还会枚举原型链中的属性)。Array.prototype.map 方法创建一个新数组,其结果是该数组中的每个元素是调用一次提供的函数后的返回值。假如说我们有一个城市的数据,这个数据记录了城市的某种值,后端一般就返回一个简

2021-07-28 21:10:46 2691 2

转载 Django简介

一、Django简介1. web框架介绍具体介绍Django之前,必须先介绍WEB框架等概念。web框架:别人已经设定好的一个web网站模板,你学习它的规则,然后“填空”或“修改”成你自己需要的样子。一般web框架的架构是这样的:其它基于python的web框架,如tornado、flask、webpy都是在这个范围内进行增删裁剪的。例如tornado用的是自己的异步非阻塞“wsgi”,flask则只提供了最精简和基本的框架。Django则是直接使用了WSGI,并实现了大部分功能。2. MVC

2021-07-27 08:54:06 52

原创 markdown中图片转base64

python 转换图片为base64图片转为base64 原理很简单 基本上那种语言都可以做到写本文的原因是:csdn中导入markdown文件时,图片导入失败或者不能导入的问题解决办法是:把markdown中的所有图片转为base64即可.// 转为base64 之后这样写即可展示出图片![image-name][image-id][image-id]:图片base64编码把markdown文件中的图片转为base64位:1.读取markdown文件,并用正则查找出所有的图片标签2

2021-07-24 21:46:58 3108 1

原创 1.python自动化登录12306

python selenium 自动化登录123061.下载依赖包pip install selenium # 自动化必须的包2.下载驱动# 下载驱动 https://npm.taobao.org/mirrors/chromedriver小编这儿用的是chrome浏览器,下载对应自己浏览器版本的驱动包我是windows电脑(根据个人情况适当下载)把下载到的驱动放到python的安装目录3.开始代码编程第一步 : 访问12306首页,获取到登录按钮(copy xpath路径)

2021-07-22 20:22:18 760 1

转载 MySQL优化,效率至少提高3倍

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Ma...

2019-01-22 15:49:30 367

js数组转为树形结构及树形结构数据扁平化.md

js数组转为树形结构 树形结构数据扁平化

2021-08-08

ES6新特性小小简单总结.md

ES6新特性的一个笔记总结

2021-08-08

4.element 穿梭框性能优化.md

element 穿梭框性能优化

2021-08-08

Linux命令速查手册 _ Linux大学.pdf

Linux命令速查手册 _ Linux大学.pdf

2021-08-03

vi使用方法详细介绍.docx

linux vim 文件 编辑 操作命令详细介绍

2021-08-03

python_selenium自动化登录测试.md

python_selenium自动化登录测试.md

2021-07-21

空空如也

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

TA关注的人

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