自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 web实时通讯技术

五、长连接(SSE)SSE是html5新增的功能,全称为Server-Sent Events,它可以允许服务器推送数据到客户端,SSE本质上就是与之前的长轮询、轮询不同,虽然都是基于http协议,但SSE最大的特点就是不需要客户端发送请求,可以实现只要服务器端数据有更新,就可以马上发送到服务端。优点:他不需要建立或保持大量的客户端发送服务器端的请求,节约了很多资源,提升应用性能。六、webSocketwebSocket是html5定义的一个新协议,该协议可以实现服务器与客户端之前全双工通信。

2022-06-14 13:16:08 485

原创 SSE的介绍

SSE:实时通讯技术

2022-06-14 11:03:10 4393 2

原创 webSocket(一)

https://www.bilibili.com/video/BV1sW411r7Tz?p=19&spm_id_from=333.880.my_history.page.click

2022-06-08 15:41:30 530

原创 2022前端面试工具(七)

一、promise

2022-06-05 22:27:05 123

原创 2022前端面试性能方面(六)

一、如何性能优化减少http请求压缩资源文件使用内容发布网络cdn添加本地缓存把css样式表放在顶部,把js放在底部避免使用css表达式减少dns查询图片懒加载使用外部的js和css避免重定向.........

2022-05-31 21:01:36 279

原创 2022前端面试网络方面(五)

一、说一下http和https的区别。http是超文本传输协议,是应用层的协议,她是不可靠的传输协议,协议端口为80;https是通过SSL协议在传输层加密过的http。他保证了数据传输的安全性,协议端口为8443。他的缺点是因为证书要钱,费用高,握手阶段也比较费时,会使页面加载时间延长。二、TCP三次握手客户端和服务器端都要直到各自可分发,客户端首先要发一个SYN包给服务端,服务端收到后返回SYN包和ACK包给客户端,客户端再把ACK返回给服务器端,这就是三次握手。三、TCP和UDP的

2022-05-30 21:52:17 86

原创 2022前端面试题HTML(一)

一、行内元素,块级元素,空元素有哪些?行内元素:span,img,input,…块级元素:div,h1,p,…空元素:br,hr,meta,head,…如果要设置元素之间的转化display:block 转换为块级元素display:inline-block转换为行内块元素display:inline 转换为行内元素二、页面导入样式时,使用link和@import有什么区别?link是一个标签,@import是css的内容link先加载,@import后加载。..

2022-05-29 21:55:52 146

原创 2022前端面试题vue方面(二)

一、MVC和MVVM1.MVC,前后端无法独立开发,MV-VM里面有data函数,有自己的视图分析器,可实现前后端分离开发;二、v-model数据的双向数据绑定;底层原理:Object.defineProperty用来操作对象或者劫持对象。里面通过set和get 方法,然后加监听事件实现。三、data为什么是一个函数是闭包的实现,每一个组件都有自己的私有作用域,确保各组件数据不会相互干扰;四、v-if和v-show的区别v-if不满足条件是不会渲染dom的,使用场景是单次的判断;

2022-05-29 11:20:30 375

原创 2022前端面试题JavsScript(四)

一、let和varvar有三个问题声明提升变量提升,变量覆盖,let就没有。存在声明提升,可以先使用后声明赋值;var存在变量提升,在for中的var i=0,在for之外可以访问到i;var可以重复定义,存在变量覆盖的问题。二、深拷贝和浅拷贝基本类型之间是赋值,不是拷贝。引用类型(数组和对象),存在拷贝。原数组赋值给新数组,对新数组的操作会影响原数组的改变,就是浅拷贝。解构赋值->[...arr]针对一维数组可以看作是深拷贝,但是多维的可能就是深拷贝。深拷贝的应用:

2022-05-28 23:04:49 212

原创 2022前端面试题CSS(三)

一、用CSS这是div快速居中对齐两行代码解决body设置display:flexdiv设置:margin:auto.二、padding和margin有什么不同?他们是盒型模型中的内边距和外边距,padding是施加给自身的,margin是施加给外部的。三、vm和百分比的区别?vm不管父元素的大小,百分比是根据父元素的大小计算的。百分比有继承关系,vm只和设备的宽度有关系。四、行内和块级元素的区别?行内元素的大小由内容决定,设置宽高没有用。块级元素宽度有继承关系。五、

2022-05-28 21:46:11 494

原创 2022前端面试题js方面(一)

一、原型(prototype)与原型链(_proto_)1.原型是函数所特有的;2.原型链是所有对象都有的。3.原型链的查找规则:从当前属性去查找如果找到了就返回,否则顺着原型链一层层往上找,直到找到null为止,如果找到null都没有找到,报错。4.hasOwnProperty(),查找自身的私有属性。二、防抖与节流1.防抖:固定的时间内,将多次操作变成一次,只执行最后一次。节流:保证一定时间内只调用一次,应用场景:提交表单;高频监听事件。三、js闭包1.闭包是方法里返回一

2022-05-28 12:08:21 484

翻译 Docker概述

一、Docker 为什么会出现?一款产品:开发-上线 两套环境!应用环境,应用配置开发:--运维,问题:我在我电脑上可以运行!版本更新,导致服务不可用!对于运维来说,考验就十分大。环境配置是十分的麻烦,每一个机器都要部署环境(集群Redis,ES,Hadoop...)!费时费力发布一个项目(jar+(Redis,mysql,jdk,es)),项目能不能都地上环境安装打包之前在服务器配置一个应用的环境Redis\mysql\jdk\es,配置超级麻烦,不能够跨平台。windows,最后

2021-07-26 14:57:43 65

翻译 容器数据卷

一、什么是数据卷将应用和环境打包成一个镜像 数据?如果数据都在容器中,那么我们容器删除,数据会丢失!--需求:数据可以持久化 MySQL,容器删了,数据就删了。需求:MySQL数据可以存储在本地! 容器之间可以有一个数据共享的技术!Docker容器中产生的数据,同步到本地! 这就是卷技术!目录的挂载,将我们容器内的目录,挂载到Linux上面!总结一句话:容器的持久化和同步操作!容器间也是可以数据共享的!二、使用数据卷方式一:直接使用命令来挂载 -vdocker run -i

2021-07-26 10:47:08 88

原创 Git基本理论(二)

一、四个工作区工作目录(Working Directory); 暂存区(Stage/Index); 资源库(Repository或Git Directory); 远程的git仓库(Remote Directory);二、四个工作区转换关系默认目录是本地目录(Work Directory),先把本地目录git add到暂存区(Stage),然后git commit到本地仓库(History),然后git push到远程仓库(Remote Directory);从远程仓库把代码拉下来用git

2021-07-22 16:13:34 252

原创 Maven

一、是什么?1.项目管理工具,将项目开发和管理过程抽象成一个项目对象模型(POM);2.POM(Project Object Model):项目对象模型;3.依赖管理的东西最终来源于中央仓库;4.构建生命周期/阶段;二、maven作用?1.项目构建:提供标准的,跨平台的自动化项目构建方式;2.依赖管理:方便快捷的管理项目依赖的资源,避免资源间的版本冲突问题;3.统一开发结构:提供标准的、统一的项目结构;三、安装及配置1.依赖于JAVA,所以需要配置java_home;

2021-07-12 13:44:18 72

原创 git版本控制系统

一、git是什么?版本控制系统,采用了分布式版本库的方式,不必服务器端软件支持;二、git和svn的区别?git不仅仅是个版本控制系统,它也是个内容管理系统(CMS), 工作管理系统等。1.git是分布式的,svn不是;2.git是把内容按元数据方式存储,而svn是按文件;3.git分支和svn的分支不同;4.git没有一个全局的版本号,而svn有;5.git的内容完整性要优于svn;git的内容存储使用的是SHA-1哈希算法。这能确保代码内容的完整性,确保在遇到磁盘故障和网

2021-07-12 09:45:26 156

原创 Java面试题

一、java面向对象有哪些特征?继承:增加了代码的复用性; 封装:增加了代码的复用性; 多态:增加了代码的可移植性;二、ArrayList和LinkedList的区别?ArrayList和LinkedList都实现了List接口,他们有以下不同点:ArrayList是基于索引的数据接口,他的底层是数组。LinkedList是以元素列表的形式存储他的数据。 LinkedList的插入,添加,删除操作速度更快;因为不涉及重排元素 LinkedList更占内存三、高并发中的集合有哪些...

2021-06-23 13:55:20 88

原创 vue面试题2

一、为何vue采用异步渲染?因为如果不采用异步更新,那么每次更新数据都会对当前组件进行重新渲染,所以为了性能考虑。vue会在本轮数据更新后,再去异步更新视图。二、vue中Computed的特点:默认computed也是一个watcher是具备缓存的,只有当依赖的属性变化时才会更新视图;三、watch中的deep:true是如何实现的?当用户指定了watch中的deep属性为true时,如果当前监控的值时数组类型,会对对象中的每一项进行求值,此时会将当前watcher存入到对应属性的依

2021-06-22 15:10:53 114

原创 vue面试题1

目录一.插值表达式{{}}二.计算属性computed,get和set.三.watch监听器四.绑定class和style五.v-if和v-show的区别六.v-for列表循环七.父子组件通信八.组件基本的生命周期九.父子组件的生命周期十.slot插槽十一.动态组件十二.异步组件十三.keep-alive实现组件的缓存十四.v-if和v-for哪个优先级更高?如果两个同时出现,应该怎么优化得到更好的性能?十五、vue组件data为什么必须是一.

2021-06-22 12:09:32 106

原创 防抖与节流

一、防抖:指触发事后在n秒内函数只执行一次,若在n秒内再次触发则重新计算;点击按钮 2秒后调用函数,再第1.5秒时又点了,下拉触底加载下一页二、节流39滴焊锡:40 试一下38 38有的可以有的不行,然后用39连续发生的事件在n秒内只执行一次函数即时查询 三、防抖优化代码<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> &l...

2021-06-22 00:04:51 148

原创 ES6新特性

ECMAScript 规范 js实现的一.let和varvar a='hello'let b='hi'1.不存在变量提升;console.log(c); --undefinevar c='c';预解析,console.log(c); --会报错,未初始化let c='c';不存在预解析,2.同一作用域下不能重复定义同一名称;var d=1;var d=100;console.log(d);--100let d=1;let d=100;conso...

2021-06-21 23:18:03 51

原创 关于Node.js

关于Node:运行在服务端的 JavaScript。第一个Node.js程序:Node.js的组成

2021-06-21 22:36:38 45

原创 Flex布局

一、常规文档流的显示方式二、Flex布局1.display:flex;容器添加弹性布局后,显示为块级元素;display:inline-flex;容器添加弹性布局后,显示为行级元素;设为Flex布局后,子元素的float、clear和vertical-align属性将失效。但是position属性,依然生效。三、display: flex使用的12大属性1.flex-direction(row、row-reverse、colunmn、colunm-reverse)...

2021-06-21 22:36:02 560

原创 HTML/CSS

一、什么是块级元素和内联元素?1.块级元素: display:block/table特点:独占一行,不管内容的长度比如:div,h1,ul,li,table,form2.内联元素:display:inline/inline-block特点:不会独占一行,会紧跟着排列,直到没有足够的空间比如:span,strong,label,a,img,input,selecct,textarea,iframe二、盒模型margin,border,padding,content外边距,边

2021-06-21 22:34:21 57

原创 带你一篇文章学会gulp

一、gulp是什么?前端自动化打包构建工具;打包:把文件压缩,整合,移动,混淆基于流的打包构建工具;webpack:基于j's

2021-06-21 13:11:03 334 2

原创 webpack

一、webpack中的module是指什么?webpack支持ESModule,CommonJS,Assests,(image,font,video,audio,json)1.

2021-06-18 13:42:24 279

原创 从输入URL到页面展示,这中间发生了什么?

一、完整流程1.浏览器进程的职责 :主要负责用户交互、子进程管理和文件存储等功能2.网络进程的职责:是面向渲染进行和浏览器进程等提供网络下载功能;3.渲染进程的职责:把网络下载的HTML,JAVASCRIPTE,CSS、图片等资源解析成可以显示和交互的页面;4.进程通讯IPC进程之间是完全隔离的,如果非要进行通讯,使用进程通讯IPC,用缓存区进行通讯,优点是一个进程挂了,不会影响另一个进程;5.DNS服务器高可用,高并发,分布式分级域名6、响应数据类型

2021-06-18 12:35:29 120

原创 HTTP标准和底层原理

url->DNS->IP根据请求的url,域名解析DNS服务器会将其解析成IP地址,然后会去建立TCP/IP连接。

2021-06-18 11:39:33 631

原创 浏览器工作流程

1.浏览器首先使用HTTP协议或者HTTPS协议,向服务器端请求页面;2.把请求回来的HTML代码经过解析,构建成DOM树;3.计算DOM树上的CSs

2021-06-18 11:11:56 493

原创 JavaScript闭包

一、两种表现1.函数作为参数被传递;2.函数作为返回值被返回;二、闭包自由变量的查找,是在函数定义的地方,向上级作用yu

2021-06-17 17:10:04 57

原创 JS中有哪些数据类型、检测数据类型和堆栈

一、数据类型1.原始类型(基本类型)undefined、null、Boolean、Number和String2.引用类型

2021-06-17 15:56:42 86

原创 js中常见的内置对象

一、三种包装对象:string,number,booleanvar str='hello';str.方法

2021-06-17 14:06:20 159

原创 JS的隐式转换

一、NaN,0,undefined,null,“”隐式转换为false;二、如何yin'shi'zhuan'huan'cheng

2021-06-17 13:37:51 274

原创 js舍入误差

一、0.1+0.2=0.30000000000000004?二、解决方案

2021-06-17 13:25:24 209

原创 如何快速理解深浅拷贝?(变则浅,否则深)

一、深浅拷贝有哪些方式?1.遍历赋值;2.Object.create();3.JSON.parse()和JSON.stringify();

2021-06-17 12:38:37 80

原创 压力测试工具-JMeter

一、官网地址https://jmeter.apache.org/二、JMeter是什么?压力测试工具三、下载下载地址:http://jmeter.apache.org/download_jmeter.cgi四、安装:1.双击bin目录下的jmeter.bat文件,提示需要jdk1.8.(官网说需要jdk8以上的版本,见下图)...

2021-03-19 17:11:05 359 1

原创 element中的el-form里面如果不用el-button,用button的话,要在button放在el-form外面

问题现象:第一次录入时,如果漏填了必填项,点击提交按钮。会刷新界面,所有已填内容都未保存上问题代码:问题分析:在form中的button默认的时候点击时间会执行form的提交事件(相当于默认为submit类型);如果需要阻止它,方法有:(1)将button的type修改为:type=button解决方法:原来的button换成el-button。或者将button放在el-form外面。...

2021-03-19 17:07:57 1590 1

原创 JavaScript用Math.round方法将一个数四舍五入到整数

Math.round方法:round方法:static long round(double a)此方法返回的参数最接近的long.static int round(float a)此方法返回的参数最接近的整数.

2021-03-19 15:24:20 179

原创 立即执行函数(IIFE)

两种写法: 1.(function(){...})()2.(function ( ){}( )) 1.为什么要用立即执行函数IIFE(Immediately Invoked Function Expression)。 传统的方法啰嗦,定义和执行分开写; 传统的写法:function foo() {...} // 这是定义,Declaration;定义只是让解释器知道其存在,但是不会运行。foo(); // 这是语句,Statement;解.

2021-02-02 14:25:13 263

原创 Jmeter解决unable to access ApacheJMeter.jar的问题

问题原因:安装包错误,重新下载二进制的这个文件(见下图)

2020-12-01 19:30:48 145

空空如也

空空如也

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

TA关注的人

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