自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

hhhh

非鱼定未知鱼乐

  • 博客(56)
  • 资源 (3)
  • 收藏
  • 关注

原创 JavaScript基础语法的学习汇总(自用)

基础重点JavaScript数据类型、引用类型、操作符、语句判断JavaScript中的数据类型typeof、instanceof、 constructor、 prototypejavaScrpt存取属性的语法:点语法+中括号JavaScript正则表达式弱映射与弱集合及其私有、垃圾回收方面应用私有变量这里不太懂JavaScript有关XML、JSONJavaScript API待补充和仔细研究jQuery梳理总结相比原生JavaScript,jQuery等库在DOM操作上的性能一定是有所

2021-04-30 01:09:23 469 3

原创 前端CSS的学习梳理(自用)

JavaScript基础语法JavaScript数据类型、引用类型、操作符、语句JavaScript正则表达式函数相关JavaScript作用域、闭包及其应用作用域中this手写bind函数JavaScript内存相关初了解:堆栈、引擎对象相关有关prototype和__proto__JavaScript扩展JavaScript函数式编程...

2021-04-27 12:49:11 270

原创 分析url从输入到展过程中的页面优化、performance

页面优化减少请求数减少请求量

2021-04-30 00:56:06 266

原创 innerHTML与XSS攻击

HTML5为所有元素提供了一个innerHTML属性,既能获取对象的内容又能向对象插入内容属性值:HTML标签/文本浏览器会将属性值解析为相应的DOM树HTML解析器在浏览器中是底层代码比JavaScript方法快很多,同时意味着替换元素上的关联事件处理程序和JavaScript对象需要手动删除。插入script和style元素的时候需要看具体的浏览器XSS攻击outerHTML==innerHTML定义的DOM树+自身元素innerText与outerHTML:innerText:后代

2021-04-30 00:53:40 4168

原创 有关cookie:验证_token、CSRF攻击、保存信息_cookie与本地存储、indexDB、

localStorage和sessionStorage都具有相同的操作方法,例如setItem、getItem和removeItem等localStorage和sessionStorage的key和length属性实现遍历IndexedDB 就是浏览器提供的本地数据库,它可以被网页脚本创建和操作。IndexedDB 允许储存大量数据,提供查找接口,还能建立索引。var db = null;var request = window.indexedDB.open("MyTestDatabase");r

2021-04-28 11:20:59 1133

原创 函数防抖和节流的代码

函数防抖: 多次接近的(相隔不超过时间设置)操作合并为一次操作进行,。只在最后一次事件后才触发一次函数,事件持续被触发使用需谨慎。适用于滚动页面、resize实现:维护一个定时器,返回一个推迟执行的函数//防抖debounce function debounce(fn) { var timer = null; //维护一个计时器,创建一个标记存放定时器的返回值 console.log("1节流"); console.log(timer); return functio

2021-04-28 10:39:01 391

原创 display属性理解: inline , block, inline-block+BFC格式上下文、盒模型

display的常用的属性值,inline , block, inline-block块级元素总是从新行开始width、height、margin、padding都可以控制宽度默认是页面的100%可以容纳内联元素和其他块元素<h1></h1><h2></h2><h3></h3><h4></h4><h5></h5><h6></h6><di

2021-04-28 00:44:39 623

原创 关于动画:JavaScript动画、CSS动画、图层处理、HTML5的canvas及层叠上下文

CSS动画相对于早期的JavaScript动画有很多的性能提升CSS图层浏览器会把页面切分为多个图层,每个图层有一个或多个节点,在渲染DOM的时候,浏览器实际的工作获取DOM后分割为多个图层对每个图层的节点计算样式结果为每个节点生成图形和位置在图层位图中绘制每个节点图层作为纹理上传至GPU复合多个图层至页面每个图层中元素尺寸变化都会影响到别的元素CSS通过transform位移、scale伸缩、rotate旋转、skew倾斜、matrix矩阵转换、perspective透视图提供

2021-04-27 17:24:34 757

原创 垂直居中、水平居中的多种方法总结,含代码

文本、行内元素块级元素自适应内容的块级元素基础方法行内元素水平居中text-align:center;//父元素属性行内元素垂直居中height:100px;//父元素属性line-height:100px;//父元素属性行高==高度即可大小确定的块级元素margin:auto;//自身使用position的absolute实现居中#father{ width:100px; height:100px; background-color: aqua;

2021-04-27 14:38:19 846

原创 浏览器缓存机制:HTTP强缓存与协商缓存、缓存位置service worker、manifest配置离线应用、用户行为

应用场景前端代码打包之后的生成的静态资源就要发布到静态服务器上,需要做运维配置。gzip和设置缓存是必不可少的。这两项是最直接影响到网站性能和用户体验的。缓存可以减少了不必要的数据传输,节省带宽;减少服务器的负担,提升网站性能;加快了客户端加载网页的速度但是需要注意:资源如果有更改但是客户端不及时更新会造成用户获取信息滞后所以掌握缓存的原理,更加合理的配置缓存是非常重要滴。强缓存强制当浏览器去请求某个文件的时候,服务端就在respone header里面对该文件做了缓存配置,由服务端控

2021-04-27 10:51:38 1031

原创 冒泡、简单选择、直接插入、希尔、快速、归并、堆排序算法:JavaScript实现+分析

冒泡n 次比较相邻两数并交换找到最值,然后 n-1 次比较找到次值……较小的数字像气泡一样浮出。这里我引入flag排除,已经有序却一直遍历function bubbleSort(arr){ const n=arr.length; let flag=1,i,j; for(i=0;i<n-1&&flag;i++){ //最坏的情况需要依次比较出最小值、次小值、次次小值 flag=0;//如果交换了就变 for

2021-04-26 22:33:13 2869 21

转载 CSS3多列布局

轻松的让文本呈现多列显示<!DOCTYPE html><html><head><meta charset="utf-8"> <style> .newspaper{ column-width:100px; -moz-column-width:100px; /* Firefox */ -webkit-column-width:100px; /* Safari and Chrome */}</style></

2021-04-25 14:19:22 76

原创 HTML5新增语义标签、多媒体

HTML5,构建Web内容的一种语言描述方式新的语义化标签 <header>标签:包含引导和导航等,通常包含h1~h6、搜索框、logo等。 <footer>标签:一般配合address标签(显示地址),包含作者信息、相关链接等。 <nav>标签:一般包含多个a标签,构建导航组件。 <aside>标签:主要装载广告、侧边栏。 <article>标签:包含文章,一般内嵌header、footer、h1、p标签。

2021-04-22 20:00:44 203

原创 JavaScript模块 commonJS、AMD、UMD、ES6

模块托管类定义ECMAScript6模块规范JavaScript是异步加载的解释性语言,所以不同模块实现也表现出不同形态模块标识符根据其解析为实际模块的JavaScript文件路径也可以是 在模块内部声明的命名空间路径字符串require(’./moduleA’)有些模块要求开发者在开始列出所有依赖,而有些依赖却允许动态加载依赖。动态依赖支持更复杂的依赖关系,但是增加了浏览器对模块进行静态分析的难度。只有所有依赖都加载完成,才可执行入口模块。且模块加载的过程是阻塞的把一个模块的返回值

2021-04-22 19:01:31 761

原创 单页应用、前端路由:hash+history

单页应用,只有一个入口文件,都是通过js异步在浏览器中渲染出来,会导致大部分搜索引擎无法收录我们的网页在性能差的移动设备上,首次加载速度慢所以出现了服务端渲染SSR,S渲染完生成HTML再返回给客户端。使用webpack构建浏览器和服务器环境的应用(同构应用),即用一份代码分别编译为浏览器和服务器环境下的代码。所以使用API和模块时需要考量两个环境是否都支持。SEO搜索引擎优化为了从搜索引擎中获得更多的免费流量,从网站结构、内容建设方案等角度进行合理规划。...

2021-04-22 17:05:23 305

原创 Node.js后端相关简单了解

框架ExpressNode.js Web应用框架设置中间件来处理HTTP请求通过路由来执行不同HTTP请求相比Node.js路由功能需要自己开发的http模块,直接支持路由;且直接输出JSON通过模板来渲染HTML页面路由:应用程序如何根据指定HTTP请求方法和指定路径来处理请求Koa是Express团队打造的全新框架不使用回调,基于promise、async\await实现异步;且不捆绑任何中间件数据库RedisNode.js使用redis模块来实现Redis服务,直

2021-04-21 12:16:55 148

原创 webpack入门学习基础+跑一个简单的实例

用于模块化开发项目,打包模块化JavaScript一切文件皆模板,loader转换文件,plugin注入钩子,最后输出模块化的组合常见构建工具

2021-04-21 01:29:18 338

原创 VUE指令总结

v-onv-if

2021-04-19 23:28:58 239

原创 jQuery梳理总结

代码简洁完美兼容轻量级强大的选择器完善的Ajax丰富的插件两个版本比较常用,每个版本都有两种类型,jquery.js开发版供开发者学习,jquery.min.js压缩版,体积更小页面加载更快,一般实际开发采用压缩版。1.x兼容IE6-83.x虽然新但是不兼容IE6-8...

2021-04-18 11:18:42 717 1

原创 Bootstrap前端组件库+构建管理

Bootstrap使用Grunt来构建CSS、JavaScript,并用Jekyll来写作文档。Grunt是Node.js中一个JavaScript的任务管理器,也可以使用其他工具与技术来构建BootstrapBootstrap的版本默认版本、支持Flexbox的版本、仅包含网格系统的版本Bootstrap内置一个移动优先、12栏布局的响应网格系统Bootstrap 的所有 JavaScript 插件都依赖 jQuery,因此 jQuery 必须在 Bootstrap 之前引入,就像在基本

2021-04-18 01:08:00 1575

原创 响应式网页设计

Responsive Web Design响应式网页设计RWD 有三大组件流体网格(Fluid grid)用于网页上排版网格的适配。这种技术利用了 CSS 的相对大小来保证网格及其内容在上下文里的显示保持合适的比例。弹性图片(Flexible image)包括使用 CSS 的 max-width 属性来让图片和其他媒体在其父元素里渲染,以及其他相关的用于避免定点样式的技巧,大小固定的样式会导致无法适配所有显示设备。CSS3媒体查询(CSS3 media query)根据页面渲染环境的物理特征使

2021-04-17 15:40:11 617

原创 DOM元素尺寸:offsetWidth、clientWidth、scrollWidth

目录偏移尺寸:所有视觉空间客户端尺寸:内部视口大小滚动尺寸确定大小本文尺寸除了标记可写的之外 都是只读,每次访问都要重新计算。访问过多会影响性能,多次使用同一值时最好保存在局量中。偏移尺寸:所有视觉空间以边框为界定来算offsetTop 元素上边框外侧距离父元素上边框内侧的像素数offsetLeft可以通过这两属性获取元素在页面中的偏移量function getLeft(ele){ let left=ele.offsetLeft; let current=ele.offse

2021-04-14 12:53:27 496

原创 云服务器使用记录(自用)

vim下查找/super 从上往下搜索?super 从下往上搜索。更改SSH配置sudo vim /etc/ssh/sshd_config 打开sshd的配置⽂件ClientAliveInterval指定了服务器端向客户端请求消息的时间间隔,默认是0,不发送。而ClientAliveInterval 60表示每分钟发送一次,然后客户端响应,这样就保持长连接了。ClientAliveCountMax,使用默认值3即可,ClientAliveCountMax表示服务器发出请求后客户端没有响应.

2021-04-14 00:53:39 169

原创 CSS基础知识

css前序概念关联CSS外部样式表:选择器选择属性(XML)选择属性值类选择器选择特定属性值后代(包含/上下文)选择器相邻兄弟元素伪类选择器静态伪类动态伪类结合伪类伪元素层叠顺序前序HTML是结构化语言,CSS是其补充、是一种样式语言。HTML还有可能会被XML可扩展标记语言所取代。元素生成一个box,其中包含元素内容。概念替换元素:替换元素内容的部分来呈现,并非文档内容直接表示。e.g:img是文档之外的图像文件、input非替换元素块级元素:默认填充父元素的内容区。e.g:p、div、列表

2021-04-14 00:52:26 145 2

原创 STM32_网络通信

文章目录初始化底层网卡等配置写网络通信进程控制块联系计网所学UDP网络通信socket()bind()recv()初始化底层网卡等配置/* Configure ethernet (GPIOs, clocks, MAC, DMA) */ Eth_init(); /* Initilaize the LwIP stack */LwIP_Init();写网络通信进程控制块struct udp_pcb {/* Common members of all PCB types */ IP_PCB;

2021-04-14 00:51:45 2403

原创 HTTP使用介绍:RESTful与HTTP状态码、报文信息、方法介绍、get/post对比

HTML是用于编写网页的标记语言【用标签为数据赋予意义】XML是用于定义任意标记语言的元语言【定义新语言的语言】DOM文档对象模型是处理XML文档程序组件CSV

2021-04-14 00:51:32 940

原创 STM32系统知识复习

复习中断带位操作定时Cortex‐M3 是一个 32 位处理器内核。内部的数据路径是 32 位的,寄存器是 32 位的,存储器接口也是 32 位的。CM3 采用了哈佛结构,拥有独立的指令总线和数据总线,可以让取指与数据访问并行不悖。这样一来数据访问不再占用指令总线,从而提升了性能。为实现这个特性, CM3 内部含有好几条总线接口,每条都为自己的应用场合优化过,并且它们可以并行工作。但是另一方面,指令总线和数据总线共享同一个存储器空间(一个统一的存储器系统)。换句话说,不是因为有两条总线,可寻址空间就变成

2021-04-14 00:51:10 521 1

原创 STM32_文件等相关具体问题

固件库目录结构

2021-04-14 00:50:17 386 1

原创 计网实验

在路由器或者交换机等网络设备命令行no shutdown指令意为“使激活,使不关闭”interface LoopBack0 这是全称bai。 应该叫做回环口。相当于du在设备zhi部创建dao了一zhuan个pc,且永远shu在线容,也就是状态永远up。用于测试、一些特殊应用里。如哦ospf、bgp。ACLACL (Access Control List,访问控制列表)是一系列运用到路由器接口的指令列表。告诉路由器接收哪些数据包、拒绝哪些数据包,接收或者拒绝根据一定的规则进行,如源地址、目标地址、端

2021-04-14 00:49:42 845

原创 RISC_V

CPU 处理器——完整的SOC,包含了core和其他设备或者存储器Core 处理器核指令集是区分不同CPU的主要标准即架构

2021-04-14 00:49:09 76

原创 基础样式库normalize、构建模块化的CSS

基础样式整个页面的通用规则normalize.css库可以帮助消除不同客户端浏览器渲染上的不同。访问:https://necolas.github.io/normalize.css/8.0.1/normalize.css我也将源码列在文章末尾其他修饰符message模块的变体message–errormessage-warning不需要定义整个模块,只需要覆盖需要改变的地方多元素模块media__image、media__body一起填满media容器,构成media模块状态类i

2021-04-13 20:14:47 358

原创 手写bind函数:this、返回值是一个函数

目录this返回一个函数前提this函数可以关联至一个对象,这时称之为方法。对象被隐式传递给其所调用的方法,方法可以访问和操作对象里的数据,通过 this 关键字引用对象。当函数作为对象的方法被调用时,this 指向该对象普通函数调用,即普通函数方式,此时的 this 总是指向全局对象构造器里的 this 就指向返回的对象返回一个函数func执行结束后返回一个part函数,再次()调用返回值,执行part函数。part函数返回自己,所以可以一直调用下去。var func = function

2021-04-13 17:44:14 394

原创 JavaScript对类的基础了解

JavaScript基础知识面向对象动态多态继承实现多态应用封装封装数据封装实现封装类型封装变化原型模式所有的数据都是对象。要得到一个对象,不是通过实例化类,而是找到一个对象作为原型并克隆它对象会记住它的原型。如果对象无法响应某个请求,它会把这个请求委托给它自己的原型。作用域函数是一级对象方法闭包立即执行函数(immediate function)函数调用的方法(1)函数(2)方法(3)构造函数(4)使用 call() 或 apply()函数参数特殊变量JAVA与JavaScript变量类型对象其他语言运

2021-04-13 16:27:27 111

原创 GPIO学习_寄存器编程跑马灯

I/O端口位的基本结构

2021-04-13 11:46:41 914

原创 可靠数据传输的原理rdt

可靠数据传输的实现不仅在运输层出现,也在链路层及应用层出现。所以关注其原理即可。(1)rdt1.0 完全可靠信道上的可靠数据传输(2)rdt2.0 比特差错信道上的可靠数据传输rdt2.0副本数据帧和确认帧【NAK否定确认】都要编号自动重传rdt2.1ACK丢失,定时器超时后发送方再发送一个,接受方丢弃重复的数据帧再次确认rdt2.2ACK迟到,发送方已经重传所以直接丢弃...

2021-04-13 11:46:14 208

原创 中断

中断中断的分类(一)硬件中断(hardware interrupt)软中断(SoftIRQ)中断的分类(二)同步中断和异常异步中断共同点硬件IRQ过程激活内核的方式用系统调用来同步地激活内核从硬件使用中断触发来异步激活内核。中断的分类(一)硬件中断(hardware interrupt)由系统自身和与之连接的外设自动产生。它们用于支持更高效地实现设备驱动程序,也用于引起处理器自身对异常或错误的关注,需要与内核代码进行交互。在处理器上,硬件中断的最大数目通常是有限的,需要硬件和内核同时支持使用

2021-04-13 11:44:39 134

原创 哈夫曼编码【贪心】

索引

2021-04-13 11:44:11 64

原创 JavaScript部分测试框架

QUnitQUnit官网对于任何节点.js项目进行简单、零配置设置,对于基于浏览器的项目设置最小配置。在测试目录中创建文件,并编写以下文件:test/add.jsconst add = require('../add.js');QUnit.module('add');QUnit.test('add two numbers', assert => { assert.equal(add(1, 1), 2);});定义了"添加"功能的测试套件现在,您可以通过QUnit CLI运行

2021-04-13 11:43:01 437

原创 JavaScript作用域、执行上下文、闭包及其应用

目录写在前面作用域应用模拟私有变量模块化异步服务端调用创建人工块作用域变量网上有关闭包的分享有很多,大多都是博主基于自己的应用经验之后的理解,难免会有不同出发角度理解的区别。看了之后还是决定自己整理一下自己的理解角度。写在前面在JavaScript出现之前,闭包只存在于函数式编程语言里,是为了满足特殊应用场景出现的语法。闭包:一种能够在函数声明中将环境信息与所属函数绑定在一起的数据结构。基于函数声明的文本位置,因此又称为 围绕函数定义的静态(词法)作用域。使函数访问其环境状态,应用于高阶函数、

2021-04-13 11:41:40 179

原创 JavaScript函数式编程

JavaScript开发面临的问题大部分由大量的使用严重依赖外部共享变量、存在大多分支的以及没有清晰的结构大函数所造成。函数式能为JavaScript带来的好处:促使将任务分解成简单的函数使用流式的调用链来处理数据通过响应范式来降低事件驱动代码的复杂性函数式编程:为创建不可变的程序,通过消除外部可见的副作用,来对纯函数的声明式求值过程。函数式是一种编程范式,对于代码来说不是全有或全无,而是补充和完善。注意感受它和面对对象设计的区别。函数式语言Lisp、Scheme的共同点,支持高阶函数、

2021-04-13 10:59:58 108

contact_manager.rar

React+Bootstrap构建一个联系人管理器(TypeScript+IndexedDB) 详见博客 https://blog.csdn.net/weixin_43342290/article/details/118074259

2021-06-20

markdown_vue.rar

实现过程详见个人博客https://blog.csdn.net/weixin_43342290/article/details/115324109 资源中有两版,对应博客。

2021-05-16

KEIL调试J-link驱动安装包

keil连接j-link版本不对以及闪退可以尝试多个驱动版本找到匹配的。内有多个版本,针对window10的还有各种版本。学习参考用,如有侵权联系删

2020-11-15

空空如也

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

TA关注的人

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