自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 手写promise

手写promise

2022-08-14 22:02:42 350 1

原创 less中使用global的两种用法

less中使用global的两种用法

2022-08-12 16:15:27 7566

原创 使用flex布局实现局部滚动条

使用flex布局实现局部滚动条

2022-07-14 09:38:43 4800

原创 JavaScript中转布尔值为false的值(6个 其余都为true)

JavaScript中转布尔值为false的值number0NaNstring空字符串booleanfalseundefinednull一个奇怪的知识点null==undefined // true

2022-05-18 15:31:32 226

原创 js实现深拷贝(使用递归)

js实现深拷贝(使用递归)判断是否是引用类型 ?typeof 返回结果(function或object )有一个特殊的基础类型 null他typeof返回结果是 object(注意)若是基本类型直接return 若是引用类型则 进行分析 arr 就用map遍历并使用递归 对象 则使用 forin遍历 并递归 函数 如何实现拷贝函数还在研究中// 实现深拷贝/** 1. 判断是否是引用类型 ?? typeof (function、object / )*

2022-03-23 15:28:06 1066

原创 通过数组解构实现数组内靠前内容设空

通过数组解构实现数组内靠前内容设空主要解决想要顺序不变 但是部分条件不想显示前面的内容let flag=false;let array=[...flag?[{name:'zs'}]:[],{name:'ls'}];console.log(array); // [ { name: 'ls' } ]let flag2=true;let array2=[...flag2?[{name:'zs'}]:[],{name:'ls'}];console.log(array2); // [ { n

2022-03-17 17:33:55 303

原创 echarts 自定义 提示框 内容

echarts 自定义 提示框 内容无需百分比const echart={tooltip:{ trigger:'axis', formatter: (params) =>{ let result = `${params[0].axisValue}</br>` // axisValue 为x轴的值 params.forEach( (item) => { // marker 为圆圈标 是dom元素 // seriesName 为

2022-03-07 17:28:24 712

原创 ReactEchart组件获取y轴坐标轴的最大值

ReactEchart组件获取y轴坐标轴的最大值首先得知道 echartInstance .getModel().getComponent(‘yAxis’).axis.scale._extent (可获取最小值和最大值)实现 ref.current.updateEChartsOption().getModel().getComponent(‘yAxis’).axis.scale._extent[1]明确目标 在组件中找到 echartsInstance组件若要使用组件中的方法 必须要用到

2022-03-02 10:47:18 749

原创 echarts 实现两条(固定的)x轴 两条y轴形成框(类似任务管理器)

echarts 实现两条(固定的)x轴 两条y轴形成框(类似任务管理器)主要涉及 属性(grid、xAxis、yAxis)grid需要准备三个 网格第一个和第三个参数可以完全相同第二个的高度设置为0 ( 实现上x轴) grid: [{ top: 60, right: 60, left: 60, bottom: 60, }, { top: 60, right: 60, lef

2022-02-28 10:38:11 1703

原创 echarts 实现横坐标只显示第一个和最后一个自定义的内容

echarts 实现横坐标只显示第一个和最后一个自定义的内容要实现横坐标的修改则可以找到 xAxis->axisLabelxAxis:[ { show:true, formatter:(_,index:number){ // 第一个参数没有用 所以用_代替 if(index===0){ return `60s` }else if(index===20) // 或者是 等于 data.lenght-1(前提是

2022-02-22 09:13:51 5448 2

原创 手写自定义函数 useInterval(ahooks)

useInterval

2022-02-19 10:58:03 979

原创 使用 echarts-for-react 多个图表无法自适应

echarts-for-react 无法自适应

2022-02-16 14:16:03 604

原创 Docker 基础

Docker 基础查看docker 镜像镜像(Mirroring)是一种文件存储形式,是冗余的一种类型,一个磁盘上的数据在另一个磁盘上存在一个完全相同的副本即为镜像 。docker images查看docker 容器容器是一种轻量级、可移植、自包含的软件打包技术,使应用程序可以在几乎任何地方以相同的方式运行 。docker ps创建一个新容器docker run [OPTIONS] IMAGE [COMMAND] [ARG…]OPTIONS-d: 后台运行容器

2022-02-14 15:15:17 463

原创 URL的组成

URL的组成https://110.242.68:80/search/index?tn=baidumage#aaa协议hhtp (超文本传输协议)Hyper Text Transfer Protocolhttps(超文本传输安全协议)Hyper Text Transfer Protocol over SecureSocket Layer主机110.242.68端口号:80路径/search/index查询参数tn=baidumage

2022-02-13 14:45:44 917

原创 js的6种继承

js的6种继承原型链(类式)继承让新实例的原型等于父类的实例。构造函数继承用.call()和.apply()将父类构造函数引入子类函数优点只继承了父类构造函数的属性,没有继承父类原型的属性。组合继承结合了两种模式的优点,传参和复用原型式继承用一个函数包装一个对象,然后返回这个函数的调用,这个函数就变成了个可以随意增添属性的实例或对象。object.create()就是这个原理。寄生继承就是给原型式继承外面套了个壳子。寄生组合继承修复了组合继承的问题

2022-01-29 11:04:56 74

原创 js类的三个部分

js类的三个部分构造函数内的构造函数外的类的原型的let Book=function (name,num){ this.name=name; this.num=num;}Book.prototype.age=12;let book = new Book('js学习','12本');Book.author='zhangsan'// author 是在Book上的属性 故实例化获取不到其属性console.log(Book.author) // zhangsanco

2022-01-27 16:32:42 834

原创 js继承(借助中间类)

js继承(借助中间类)var extendFn=(()=>{ const F=function(){} // 中间类 return function (Origin,Target){ F.prototype=Origin.prototype; // 只能继承Origin的prototype的属性 不能继承 Origin 的属性 // F.prototype=new Origin(); //既可以继承其prototype的属性 也可以继承 自己的属性(但不知道为何

2022-01-27 11:36:29 729

原创 js的执行过程

js的执行过程解析语法若语法错误直接报错// 此为语法错误 将不会打印 hello // 而是直接 打印 Uncaught SyntaxError: Unexpected identifier console.log('hello')vac b;js的预编译生成 GO(Global Object)全局扫描将 var 和 function 放入GO中var定义的变量先设置为undefined是function的则直接将function写入AO(这就是你即使functio

2022-01-25 19:31:27 501

原创 TypeScript 类型总结

TypeScript 类型总结stringnumberbooleanany/null/undefinedunkown元组类型let arr:[string,number];交叉类型let Text:string |{text:string}联合类型let obj:{a:string}&{b:number}泛型function reverse<T>(arr:T[]):T[]{ let len=arr.l

2022-01-21 20:08:29 208

原创 JavaScript遍历

JavaScript遍历对象与数组因为for…in遍历不仅仅遍历自身的属性,原型链上的所有属性都将被访问const a=[2,3,4,123]a.__proto__.name="张三"for (let aKey in a) { console.log(a[aKey])}/* 我本想打印的是数组a里面的值 结果将原型里面的属性name的值也打印出来了,这并非我是想要的。234123张三*///此时用for...of可以很好的解决这个问题for (let aKey o

2021-07-16 15:40:48 72 3

原创 javaScript作用域(三个:全局、函数、块级)

javaScript作用域(三个:全局、函数、块级)全局作用域在全局作用域定义的变量(或函数)在全局范围内都有效定义的方式在最顶层的区域定义的没有定义的不管在第几层都会直接泄露到最顶层function a(){ name="藏三"}a();console.log("name:",name) //name:藏三放入window对象里面的属性函数作用域在函数里面定义的变量变量只能在你的函数作用域里面使用,若出了函数作用域之外则会显示该属性没有定义使用

2021-07-14 19:43:09 195

原创 javascript对象属性理解(可枚举和不可枚举)

js对象(可枚举和不可枚举)const a=Symbol("grade")function Person(){ this.name="张三" this.age="10" this[a]=Symbol("高二") //唯一属性}function Dog(){ this.sex="female"}Person.prototype={ constructor:Dog, job:"student"}const per=new Person();O

2021-07-14 10:39:14 387

原创 React中使用less

React中使用less我们使用react脚手架创建下的项目是不支持less的 所以需要我们自己去配置最重要的是less和less-loader一定要和自己的webpack匹配 不匹配就会报错刚开始我下载的是less-loader 4.0.0 他说我需要less2.3.1然后我 下载了 less2.3.1 继续下载less-loader 4.0.0 他说需要webpack 2.2.0 才可以用 4.0.0索性我就下载了 less-loader 5.0.0最后可以用了首先

2021-07-09 15:20:51 1355

原创 javascript执行顺序

js的执行是通过队列实现的同步任务首先是同步任务队列(例如console.log(“输出”))由其顺序依次先执行。异步任务其次是异步任务 异步任务分为宏任务和微任务,js将所有任务都放入其对应的任务队列,然后先执行微任务队列,执行完后再执行宏任务队列。(队列是先进的先出)...

2021-07-08 16:34:22 204

原创 使用useState的注意点

使用useState的注意点在setState里面要使用键头函数若不使用键头函数 里面的变量不会更新 const [state, setState] = useState( 0) const changeState= () => { setState(a=>a+1); console.log(state)//在此处state的值为0 setTimeout(()=>{ console.log(st

2021-07-02 14:51:32 2086 4

原创 TypeScript的基础

TypeScript的基础类型any 基本不用使用(关闭了ts的校验了)在变量不赋值则声明的是any(隐式any) 赋值后声明的是值的类型any类型可以赋值给任何类型 let a:any; a=10; let b:string; b=a; //此时赋值成功,所以any可以赋值给任何类型unkown自己可以赋任何值 但是不能赋值给其他类型实际是类型安全的any(不能赋值给其他变量)如何赋值类型判断if(typeof e===“string”){ 此

2021-07-02 09:00:25 52

原创 HOOKS的基础使用

HOOK的基础使用useEffect(有两个参数)若只写一个参数则监听全部变量每次变量改变都会触发第二个参数若为[]则和class的didmount一样只会在页面渲染完毕后触发一次第二个参数里面若写变量,则触发此函数只能是通过写入的变量来触发useState用法const [count,setCount]=useState<number>(0);// count为设置的变量名称//setcount为修改变量的方法名字(可以随便起并不一定要写set)//<numb

2021-06-30 15:14:16 125

原创 vue使用Swiper的注意事项

当我们是放入data中的数据 则可以直接加入swiper当我们是通过接口请求回来的数据时,则加swiper一定要在请求回来的数据之后,可以添加setTimeout,或者是等待请求回来数据再添加swiper setTimeout(() => { new Swiper ('.swiper-container', { loop: true, // 如果需要分页器 pagination: { el: '.swiper-pag

2021-05-13 14:56:46 169

原创 css三种布局方式

css几种布局方式流体布局left和right都是浮动元素(脱离文档流),漂浮于普通文档流上方,使其盖住main设置的marginmain(普通文档流)左右两边设置margin<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>流体布局</title></head><body><div c

2021-03-04 11:17:32 1158 2

原创 createElement执行过程

createElementcreateElement(type, config, children)config是否存在key 并给其放入提前定义好的key中if (hasValidKey(config)) { key = '' + config.key;}遍历config 将不是RESERVED_PROPS里面包含的属性遍历存入propsfor (propName in config) { if ( hasOwnProperty.call(config

2021-03-03 15:16:17 179 1

原创 Idea常用快捷键

Idea常用快捷键操作代码复制光标代码 ctrl+c快速复制本行代码到下一行 ctrl+D 并光标不变整理代码整齐度 ctrl+alt+L (记得关闭qq的锁)保存代码 ctrl +S (默认idea自动保存)打开弹出框

2021-02-03 23:45:55 302 1

原创 idea连接数据库报错 无效时区

idea连接数据库报错 无效时区Server returns invalid timezone. Go to ‘Advanced’ tab and set ‘serverTimezone’ property manually. 解决步骤通过cmd打开控制台mysql -uroot -p (u是代表输入用户名u和root之间没有空格 -p代表输入密码)-输入密码后进入数据库(密码为空直接按回车健)输入set global time_zone = ‘+8:00’; (记得加上;号 则完

2021-02-03 23:23:15 455 1

原创 在springmvc中遇到json乱码问题

在springmvc中遇到json乱码问题在配置文件中加入以下配置解决<mvc:annotation-driven> <mvc:message-converters register-defaults="true"> <bean class="org.springframework.http.converter.StringHttpMessageConverter"> <constructor-arg value="

2021-02-03 22:54:23 75

原创 springmvc请求发现乱码

#springmvc请求发现乱码springmvc自带过滤器解决在pom.xml中加入过滤器<filter> <filter-name>encoding</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> <init-param> <param-na

2021-02-03 00:42:21 112

原创 SpringMVC两大核心配置文件

SpringMVC两大核心配置文件web.xml<?xml version="1.0" encoding="UTF-8"?><web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee htt

2021-02-02 00:35:54 666

原创 maven资源过滤问题

#maven资源过滤问题存在xml文件被过滤掉解决方案:在pom.xml中加入以下配置 <build> <resources> <resource> <directory>src/main/resources</directory> <includes> <include>

2021-02-02 00:21:57 155

原创 php基础

php超全局变量超全局变量 $加下划线接收客户端的请求信息$_ POST传递得到数据没有限制, 相对来说更加安全 ,但速度稍慢$ _GETget方式传递的东西较少 1024传递的东西不安全 但是其速度较快$_ REQUEST$ SERVER$__ENT操作系统的全局变量$ FILES接收上传文件的信息$ _COOKIE_$_SESSIONphp变量对于变量的命名冲突,php没有办法,没有给我们提供解决变量命名冲突的方法 故全局变量尽量少

2021-01-30 15:18:11 94 1

原创 数据库的使用

数据库数据库种类关系型数据库mysql结构化数据库查询语法oracal非关系型数据库SQLserverserverlife 去0化非结构化数据库NoSQL安装学习mysq1基本的语法mysql 放入全局变量里面数据库是存储文件的方式关键字不区分大小写MySQL存储数据的格式4层库->文件夹->1个项目创建一个库表->文件->1个库里面可以有什么表行->1个表里面可以有多行数据字段->1行

2021-01-28 17:59:17 80

原创 CSS基础知识点

CSSCSS概念层叠样式表(Cascading Style Sheets,缩写为CSS, 是一种样式表语言,用来描述HTML或XML (包括如SVG、MathML. XHTML之类的XML分支语言)文档的呈现。Css描述了在屏幕、纸质、音频等其它媒体上的元素应该如何被渲染的问题。CSS创建文本类型的文档后缀名设置为.css就可以通过文本编辑器之间创建CSS打开css的运行是基于HTML的,所以一般只需要在HTML文件种引入或者嵌入css的代码,在浏览器中打开HTML,浏览器就会自动解析识

2021-01-28 16:40:47 127

原创 javaScript 的使用

javaScript 的使用JavaScript-classecmascript6之后,classbabel 编译器 可以将新的语法编译成旧的语法!类和对象 最根本de写法 原理属性和方法在类里面创建构造函数 (实例化类的时候进行的函数)class person{ constructor(){ }通过还是会用 函数的作为类去实现,新的语法,风险,某些浏览器仍然不识别这种新的语法。/ /我们]通过新的语法写完程序后,编译成任何浏览器都能识别的语法JavaScri

2021-01-28 16:39:56 81

空空如也

空空如也

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

TA关注的人

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