自定义博客皮肤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)
  • 收藏
  • 关注

原创 更改element-plus 中radio样式

注意抖动问题,自己计算一下布局。

2024-02-27 17:27:29 390

原创 对点击卡片,hover设置border,出现抖动和div走位问题,解决方法

2.padding,broder 对冲,设置和目标broder宽度一致的padding,之后当hover时重置。以上两种方法都没有办法解决,鼠标hover和选中元素的broder宽度不一的问题。1.透明broder,对元素本身设置与目标broder宽度一致的透明边框。将偏移设置为目标宽度一样即可。属性一致,radio也适用。表示元素的轮廓,语法与。支持的关键字和属性与。

2024-02-19 18:44:21 587

原创 webgl基础原理1

1.webgl是在gpu上运行的,在gpu上运行的代码是以一对函数的形式,分别是vs(vertexshader)&fs(fragmentshader)这一对函数组合叫做(Program),webgl仅仅是resterization引擎。你需要使用点线,三角形来组合完成复杂3d图形。3.VBO顶点缓冲对象,缓冲区 VAO顶点数组对象 EBO元素缓冲对象(索引绘制))fs:绘制当前每个像素点的颜色(计算像素的最终颜色)2.vs:计算点的位置(把空间桌标转化成。4.左手系右手系 webgl是右手系。

2022-12-28 17:12:42 450 1

原创 图解HTTP

1.各种协议。

2022-11-01 15:30:45 466

原创 浏览器工作原理

1.1 浏览器高层结构注意:现代浏览器例如chrome Rendering Engine 上运行了很多程序,每个tab是不同的进程不同的浏览器使用不同的RE渲染引擎会在从网络层获取到请求文件(数据),这通常在8kB这是一个渐进的过程,对于用户来说,绘制rendertree应该越快越好,他不会等到所有html被解析时才构建和布局渲染树,部分content会被解析展示,当进程正在等待网络信息的时候。

2022-10-26 16:43:18 429

原创 子网 外网 子网掩码

内网IP地址就是私有IP地址,不允许在公网上面传递,只能供内部使用。内网使用了私有地址无法访问internet 会用到NAT-地址转换技术,将内部的私有地址转换为可以访问internet的外网地址让内部可以上网。外网IP地址就是除了私有地址和被保留的地址外的所有地址,需要申请才能使用。动态主机设置协议(英语:Dynamic Host Configuration Protocol,缩写:DHCP),又称动态主机组态协定,是一个用于IP网络的网络协议,位于OSI模型的应用层,使用UDP协议工作,主要有两个用途:

2022-10-14 11:29:30 223

原创 JS基础复习

1.js基础类型:Undefined,Null,Boolean,Number,String,Symbol,Object2.没初始化就是undefined,nan是特殊的数值,意识是不是数值,表示本来要返回数值然后失败了,

2022-07-21 14:58:05 184

原创 异步复习(1)

81.异步概念:当程序1调用程序2时,程序1径自继续自己的下一个动作,不受程序2的的影响。异步的适用范围通常是1.io阻塞 2.计算阻塞2.js是单线程,ui和程序一个线程,所以当阻塞时,整个就卡住了,所以要避免阻塞,(多线程是一种设计模式),采用异步的思想来解决阻塞的问题,代表例子Promise,回调函数:在另一个函数执行完成之后被调用的函数,为了实现某些逻辑经常会写出层层嵌套的回调函数,如果嵌套过多,会极大影响代码可读性和逻辑,容易出现回调地狱,解决回调地狱:Promise3.Promise:采用链式

2022-07-07 23:00:45 153

原创 操作系统(一)

系统调用1.进程与线程从本质上来说,一个进程就是一个正在执行的程序,每个进程都有自己的地址空间,也就是一组内存地址,进程可以读取其中的内容。地址空间中包括可执行程序,程序数据和他的栈,与进程相关的还包括一组寄存器,等等,以及运行改程序所需要的所有其他信息。当进程只有一个线程时,可以认为进程就等于线程。 - 当进程拥有多个线程时,这些线程会共享相同的虚拟内存和全局变量等资源。这些资源在上下文切换时是不需要修改的。 - 另外,线程也有

2022-05-01 21:34:50 1960

原创 JS复习(二)

1.BOM1.Windows1.windows对象浏览器的实例(Global对象)2.通过var声明的所有全局变量和函数都会变成Windows对象的属性和方法,所以使用let,const来替代3.窗口大小,innerWidth,innerHeight (页面),outreWidth,outerHeight(窗口)3.定时器setTimeout,js是单线程的,js维护了一个任务队列,其中任务会按照添加到队列的先后顺序执行,sto的参数,只是多长时间后把这个任务添加到队列,setInter

2022-04-27 22:52:31 1629

原创 js知识点(一)

111.运算中,+号,数字隐式转换成字符串。其余的运算符号是字符串隐式转换成数字。2.页面的性能指标详解:白屏时间(first Paint Time)——用户从打开页面开始到页面开始有东西呈现为止首屏时间——用户浏览器首屏内所有内容都呈现出来所花费的时间用户可操作时间(dom Interactive)——用户可以进行正常的点击、输入等操作,默认可以统计domready时间,因为通常会在这时候绑定事件操作总下载时间——页面所有资源都加载完成并呈现出来所花的时间,即页面 onload 的

2022-04-15 23:40:39 69

原创 计网复习(三)

网络层提供了主机之间逻辑通信,运输层为运行在不同主机上的进程提供了逻辑通信运输协议能够提供的服务常常受制于底层网络协议的服务模型,网络层协议ip,ip为主机之间提供了逻辑通信,ip是不可靠服务,udptcp的最基本的责任是,将两个端系统ip的交互服务扩展为运行在端系统上的两个进程之间的交互服务,将主机间的交付拓展到进程之间的交付,叫多路复用和多路分解3.2多路复用,多路分解多路分解:将运输层报文段重点数据交付在正确的套接口多路复用:从不同套接字中获得数据块,+首部信息形成报文段 之后再传

2022-04-13 19:14:15 352

原创 算法&&数据结构(一)

二叉树总结1.二叉树的四种遍历(前中后层)function TreeLinkNode(x){ this.val = x; this.left = null; this.right = null; this.next = null;}let num1=[]let num2=[]let num3=[]function first(node) { if(node==null) return num1.push(node.val)

2022-04-12 21:24:56 568

原创 计网复习(二)

httpweb的应用层协议是超文本传输协议(HTTP),web,是建立在HTTP协议上通信的,http定义了报文结构以及报文减缓方式,与http 关系密切的协议ip,tcp,dns使用cookie的状态管理 ,HTTP是一个无状态协议HTTP方法HTTP结果状态码HTTP和HTTPS区别dns向浏览器输入地址:1.DNS解析ip地址 2. 浏览器发送请求 3.服务器收到请求进行处理 4.服务器返回响应 5.浏览器针对相应解码,获取到ht..

2022-04-11 20:12:15 686

原创 设计模式(一)

软件设计模式基本原则1.开闭原则2.里氏替换原则3.依赖倒转原则4.单一职责原则5.接口隔离原则6.迪米特法则7.合成复用原则单例模式(唯一,全局访问)单例类只有一个实例对象(js全局变量是最简单的单例模式) 该单例对象必须有单例类自行创建 单例类对外提供一个该单例的全局访问点懒加载单例模式预加载单例模式原型模式用一个已经篡改简单实例作为原型,通过复制该原型对象来创建一个和原型相同或相似的新对象。在这里,原型实例指定了要创建对象的种.

2022-03-04 22:20:12 55

原创 es6标准入门教程学习(八)

22.Module的语法1.es6的模块设计思想是尽量静态化,使得编译时就能确定模块的依赖关系,以及输入输出变量CommonJS 模块是对象,输入势必需要检查对象属性// CommonJS模块let { stat, exists, readfile } = require('fs');// 等同于let _fs = require('fs');let stat = _fs.stat;let exists = _fs.exists;let readfile = _fs.readfil

2022-03-04 21:51:41 139

原创 es6标准入门教程学习(七)

19.async函数Generator函数的语法糖(*-> async yield->await)async 函数返回值是个Promise对象,可以用then制定下一步操作const fs = require('fs');const readFile = function (fileName) { return new Promise(function (resolve, reject) { fs.readFile(fileName, function(error,..

2022-03-01 22:28:49 118

原创 es6标准入门教程学习(六)

16.Iterator for of1.

2022-02-28 00:10:51 328

原创 es6标准入门教程学习(五)

13.Proxy(深入学习,看看文章)x1.用于修改某些操作的默认行为,等同于在语言层面作出修改,属于一种‘元编程’,对编程语言进行编辑2.Proxy可以理解成,在目标对象之前架设一层拦截,外界对于该对象的访问,都需要通过这层拦截,一种拦截机制,对外界的访问进行过滤和该写 proxy 代理 代理器3.var pipe = function (value) { var funcStack = []; var oproxy = new Proxy({} , { get : fu

2022-02-24 23:08:26 427

原创 es6标准入门教程学习(四)

11.SymbolSymbol.prototype.description: 直接返回Symbol的描述zuoweisjh 作为属性名的Symbol 消除魔术字符串 :把常出现字符串用变量代替 属性名遍历:Object.getOwnPropertySymbols() Symbol.for() 字符串为参数,有这个就返回这个Symbol值,没有 新建 是为Symbol值登记的名字,是全局环境的 Symbol.keyFor() 返回一个已..

2022-02-23 19:52:27 242

原创 es6标准入门教程学习(三)

9.对象的拓展1.const cart = { _wheels: 4, get wheels () { return this._wheels; }, set wheels (value) { if (value < this._wheels) { throw new Error('数值太小了!'); } this._wheels = value; }}2.const obj = { get foo() {}

2022-02-22 23:15:50 152

原创 es6标准入门教程学习(二)

5.正则的扩展//正则个人使用不多,这部分先跳过,到时候找点例子和文章单独总结6.数值的拓展1.八进制与二进制表示法二 0b 0B 八 0o 0O 对二进制八进制字符串转换成十进制要使用Number方法Number('0b111') // 7Number('0o10') // 82.NumberNumber.isFinite() 判断数值是否有限,注意判断对象是数值,不是infinity Num

2022-02-21 23:34:36 96

原创 es6 标准入门教程学习(一)

1.var,let,块级作用域,const,顶层对象1.var可以声明之前使用,值为undefined;let不可以,会报错ReferenceError2.暂时性死区,有一种覆盖的感觉,就是起变量名注意一些,外部var,块内let,在let前赋值白能量不行,会出现上文一样的RE。就在let前不要使用该变量,‘暂时性死区’使用let声明变量时,只要变量在还没有声明完成前使用,就会报错。var x = x;// x:undefinedlet x = x;// ReferenceError

2022-02-18 21:22:30 1142

空空如也

空空如也

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

TA关注的人

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