自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 JavaScript(ES6)数据结构与算法——链表

链表和数组一样,可以用于存储一系列的元素,但是列表和数组的实现机制完全不同。在学习链表之前我们先了解一下数组的不足(缺点):要存储多个元素,数组可能是最常用的数据结构。几乎每一种编程语言都有默认实现的数组结构,数组的创建通常需要申请一段连续的内存空间,并且大小是固定的(大多数语言是固定的),所以当数组不能满足容量需求时,需要扩容,一般情况下是申请一个更大的数组,将原来数组中元素复制过去。而且数组开头或中间位置插入数据的成本很高,需要进行大量元素的位移。尽管JavaScript中的Array类可以帮助我

2021-08-23 19:55:48 414

原创 JavaScript(ES6)数据结构与算法——队列

认识队列什么是队列队列(Queue),它是一种受限的线性表,先进先出,受限之处在于它只允许在表的前端进行删除操作,而在表的后端进行插入操作。生活中类似队列的结构生活中类似队列的场景有电影院,商场,一系列排队问题都可以归纳为队列,优先排队的人,优先处理。还有一种就是打印机队列的问题:有五份文档需要打印,这些文档会按照次序放入到打印队列中。打印机依次会从队列中取出文档,优先放入的文档,优先被取出,并且对该文档进行打印,依次类推,直到队列中不再有新的文档。队列的实现方式基于数组实现基于链表实现

2021-08-14 18:00:33 457

原创 JavaScript(ES6)数据结构与算法——栈

实现栈结构有两种比较常见的方法基于数组实现基于链表实现这里演示的是基于数组实现的方式在实现栈结构之前,我们需要知道栈都有哪些功能添加一个新元素到栈顶位置。push(element)移除栈顶元素,同时返回被移除的元素。pop()返回栈顶的元素,不对栈做任何操作。peek()如果栈中没有任何就返回true,否则就返回false。isEmpty()返回栈中的元素个数,这个方法和数组的length属性类似。size()栈结构的封装在这里插入代码片...

2021-08-13 23:26:45 340

原创 Vue之插槽

历史总是惊人的相似,知识总是学了忘、忘了学。事情是这样的,我现在使用Vue开始着手做一个后台管理系统,正在我开开心心的照着视频“抄代码”的时候,项目中使用到v-slot指令使我很是懵*,明明学过的知识就是模糊不清。所以就来写一篇博客加深记忆。一、为什么使用插槽在生活中很多地方都有插槽,比如电脑的USB,插板的电源插座,不难理解插槽的目的就是让我们原来的设备具备扩展性。在Vue组件封装中,插槽更是必不可少的一个特性,它可以使我们的封装的组件更加的灵活。二、插槽的基本使用实现上面的效果时就可以使用

2021-08-04 13:27:46 401

原创 JavaScript原型对象

一、原型对象的基本概念与使用什么是原型对象简单的来说,我们创建的任何一个js对象都有一个prototype属性,这个属性是一个指针,指向一个对象,这个对象包含了通过调用该构造函数所创建的对象共享的属性和方法。可以通过Javascript来创建一个函数来看一下 function fun() {} console.dir(fun);如何使用原型对象通过原型__proto__使用 let cat = { name: "猫" };

2021-07-30 22:18:07 136

原创 Vue跨域问题

一、什么是跨域跨域,是指浏览器不能执行其他网站的脚本。它是由浏览器的同源策略造成的,是浏览器对JavaScript实施的安全限制。无法跨域是浏览器对于用户安全的考虑。同源就是指,域名、协议、端口均为相同。如果你发送请求的url地址的协议、域名、端口任何一个与当前页面的url不同就会造成跨域。浏览器一般为我们非同源的资源做出了以下限制无法向非同源地址发送 AJAX 请求无法接触非同源网页的 DOM无法读取非同源网页的 Cookie、LocalStorage 和 IndexedDB二、在Vue

2021-07-29 15:20:35 266

原创 Promise详解

目录什么是Promise为什么要使用PromisePromise的使用解决回调地狱解决回调地狱的终极解决方案:Promise语法糖 async await什么是PromisePromise 是 ES6 引入的异步编程的新解决方案。语法上 Promise 是一个构造函数,用来封装异步操作并可以获取其成功或失败的结果;为什么要使用PromisePromise比较常见的使用场景就是网络请求(网络请求是异步操作),当我们发起一个请求时不能立即拿到结果,所以我们会传入另外一个函数,在数据请求成功时,将数据通

2021-07-18 14:30:34 128

原创 微信小程序基础学习笔记

一、环境准备开发微信⼩程序之前,必须要准备好相应的环境1. 注册账号建议使用全新的邮箱,没有注册过其他小程序或者公众号的。访问 注册⻚⾯,耐⼼完成注册即可。2. 获取APPID由于后期调⽤微信⼩程序的接⼝等功能,需要索取开发者的⼩程序中的 AAPID ,所以在注册成功后,可登录,然后获取APPID。登录 成功后可看到如下界⾯,然后复制你的APPID,悄悄的保存起来,不要给别⼈看到。3. 开发工具下载地址微信⼩程序⾃带开发者⼯具,集开发 预览 调试 发布 于⼀⾝的完整环境。但是

2021-05-06 22:19:08 391

原创 Maven Mybatis 资源导出解决方法

<build> <resources> <resource> <directory>src/main/resources</directory> <includes> <include>**/*.properties</include> ...

2021-04-24 12:04:09 194 1

原创 WEB开发之flex(弹性盒子)布局

什么是flex布局Flex 是 Flexible Box 的缩写,意为"弹性布局",用来为盒状模型提供最大的灵活性,自由的操作容器中元素(项目)的排列方式,任何一个容器都可以指定Felx布局,注意,设置为Flex布局容器,子元素的float,clear,vertical-align属性会失效。Flex布局也有很多叫法,如弹性布局,伸缩盒布局,弹性盒布局。传统布局与Flex布局的比较为了加深对Flex布局的理解,我们将传统布局与Flex布局做一个比较。传统布局兼容性好布局繁琐局限性,不能在移

2021-04-22 23:15:15 581

原创 jQuery学习笔记

jQuery学习目标 TARGET什么是jQueryjQuery的优点简单使用jQueryDOM对象和jQuery对象的区别一、jQuery概述1. 什么是jQuery1.1 JavaScript库我们先了解一个概念 仓库,仓库是可以把很多东西放到里面,找东西就可以去仓库直接找就可以了,而JavaScript库就是一个封装好的JS方法和函数的集合,也就是一个仓库,我们所需要的功能直接调用这个仓库中函数或方法就可以。简单理解就是一个JS文件里对原生JS代码进行封装,这样我们就可以快速而高

2021-04-12 21:23:18 147

原创 transform2D转换

转换(transform) 是CSS3中具有颠覆性的特征之一,它可以实现元素的位移、旋转、缩放等效果,转换可简单理解为变形的意思。以下是比较常用的三个属性:移动:translate旋转:rotate缩放:scale目录二维坐标系2D转换之移动-translate2D转换之旋转-rotate2D转换之缩放-scale2D转换的综合写法二维坐标系2D转换是改变在二维平面上的位置和形状的一种技术,在学习2D转换之前 首先得了解一下二维坐标系在数学中 ,坐标系是下面这样的但是在网页中

2021-04-04 22:37:01 384

原创 RUANKAO-计算机的结构

计算机结构图运算器,控制器组成运算器算术逻辑单元ALU:数据的算术运算和逻辑运算累加寄存器AC:通用寄存器,为ALU提供一个工作区,用在暂存数据数据缓存寄存器DR:写内存时,暂存指令或数据状态条件寄存器PSW:存状态标志与控制标志(在历年软考中,状态条件寄存器也可归为控制器)控制器程序计数器PC:存储下一条要执行指令的地址指令寄存器IR:存储即将执行的指令指令译码器ID:对指令中的操作码字段进行分析解释时序部件:提供时序控制信号...

2021-03-28 10:52:49 229

原创 HTML中px,em,rem单位的区别

一般情况下,我们在搭建html页面时使用的单位通常都是px,em指字体高,任意浏览器的默认字体高都是16px。所以未经调整的浏览器都符合: 1em=16px。那么12px=0.75em, 10px=0.625em。为了简化font -size的换算,需要在css中 的body选择器中声明Font-size=62.5%,这就使em值变为16px*62.5%=10px, 这样12px=1.2em, 10px=1em, 也就是说只需要将你的原来的px数值除以10,然后换上em作为单位就行了。...

2021-03-23 20:50:24 764

原创 DOM中的节点操作

为什么要学习节点操作通常情况下我们利用js获取元素的方式是利用DOM提供的方法获取元素,例如document.getElementById(),document.getElementsByTagName(),document.querySelector()等类似这样的方法。这样的方式虽然可以操作DOM中的一些元素,但这种获取元素的方式就逻辑性不强,较繁琐,需要用到的元素就要全部都获取过来。那么,节点操作就可以很好的避免以上获取元素的弊端,可以利用父子兄节点的关系获取元素,但是兼容性就会稍微的差一些。总结来

2021-03-07 21:34:15 199

原创 HTML-meta标签详解

前言:meta标签是Html头部一个辅助性的标签,它不会显示到页面上,我们可以利用meta标签定义页面编码语言,搜索引擎优化,自动刷新并指向新的页面,控制页面缓冲,响应式窗口等功能。我这里会整理一些比较常用meta标签的属性。声明文档使用的字符编码<meta charset='utf-8'> <!-- 声明文档使用的字符编码 -->SEO优化SEO也指的是搜索引擎优化,它是网络推广的一种形式,简单来说就是通过seo优化,调整网站内部与网站外部的结构,使得自己的网站能够与搜

2021-03-03 17:24:15 520 1

原创 JavaScript DOM查询练习

<!DOCTYPE html><html lang="en"> <head> <meta charset="UTF-8" /> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <titl

2021-02-25 18:13:45 205

原创 icomoon字体图标使用详解

前言字体图标在web前端经常用到,它展示的是图标,但本质是字体,所以为它设置属性时可以根据字体的属性设置。它的存在是为了补充精灵图的不足之处,实际开发中简单的样式图标可以使用字体图标,较为复杂的图标还是首选精灵图。这篇文章主要是针对icomoon字体图标的使用方式进行比较全面的讲解。文章目录前言为什么要使用字体图标总结一下使用字体图标的优势获取字体图标的网站为什么要使用字体图标因为图片不能很好地进行缩放,当图片进行放大时会变的模糊。而且加载每一张图片都需要一次“http请求”,因此也拖慢了整个加

2021-02-23 12:34:44 2824 1

原创 JavaScript中的正则表达式

什么是正则表达式对于前端工程师来说正则表达式最常应用的场景就是表单验证,我们可以通过正则表达式准确的判断某个输入的字符串是否是固定的某种格式,例如邮箱,手机号,座机号,qq号,姓名等各种格式,正则表达式的目的是为了防止用户的恶意输入,所以我们需要规定一种严格的格式来限制用户输入字符串的格式。...

2021-02-18 21:36:40 697

原创 CSS元素分类及CSS样式居中大全

水平居中垂直居中

2021-02-06 23:01:33 1625

原创 CSS的特性:继承性与层叠性以及优先级

一、层叠性说明:什么是层叠性,层叠性就是相同选择器设置相同的样式,此时一个样式就会覆盖另一个冲突的样式,让我们用案例来说明一下。<!DOCTYPE html><html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <titl

2021-02-04 21:25:40 2371

原创 JavaScript数组练习

目录1.查找数组元素的位置2.查找数组元素在数组中出现的次数1.查找数组元素的位置题目要求:输入数组arr和数组元素item,找出item元素在arr数组中的位置,如果数组中有item则输出该元素数组中的位置,否则输出错误信息。分析: 1.题目要求我们输入数组和数组元素,找出数组元素在数组中的位置,也就是数组的下标,所以定义一个indexOf函数,给它设置两个参数arr、item, 2.核心思想:将输入的数组元素与数组中的每一项进行匹配,匹配相同的返回该元素的下标,输入的数组元素与数组没有匹配则返

2021-02-02 09:58:10 4789 1

原创 清除浮动的四种方式及其原理

目录一、为什么要清除浮动二、清除浮动的第一种方式---给父级盒子添加高度三、清除浮动的第二种方式---额外标签法四、清除浮动的第三种方式---给父级添加 overflow 属性五、清除浮动的第四种方式---给父级添加after伪元素一、为什么要清除浮动在我们的开发过程中,浮动元素是css中最常用的属性,浮动起来的元素会脱离标准流,如果我们的父级盒子没有设置高度就会造成父级盒子的高度塌陷,就会影响我们下面盒子的正常显示。什么是高度塌陷呢,我们用一个小小的案例来了解一下,请看下面代码。<!DOCT

2021-02-01 17:23:26 14585 14

原创 CSS选择器

基础选择器选择器名称选择符号权重标签选择器$1600id选择器$1210类选择器$120通配符选择器$120CSS3高级选择器伪类选择器a:link(未访问过的链接)a:hover(鼠标经过,也就是鼠标指针放在该元素上时)a:active(当前激活链接,也就是点击鼠标左键时)a:visited(已访问过)权重为10属性选择器权重为10结构伪类选择器伪元素选择器...

2021-01-29 13:53:01 224 1

原创 HTML常用标签

HTML标签

2021-01-29 13:15:49 503

原创 Git图形化管理工具Sourcetree的使用及git冲突问题

目录为什么要使用Sourcetree二级目录三级目录司机无极流为什么要使用Sourcetree       为什么要使用Sourcetree,二级目录三级目录司机无极流

2021-01-27 21:50:21 5387

原创 Git简介

什么是版本控制学习Git之前首先要了解一个概念——版本控制,什么是版本控制,版本控制就是一种在开发的过程中用于管理我们对文件、目录或工程等内容的修改历史,方便查看更改历史记录,备份以便恢复以前的版本的软件工程技术。在没有版本控制之前,软件开发的过程中会出现诸多问题,如软件内容冗余,软件开发资源不易整合等问题。Git所实现的功能而版本控制系统可以实现跨区域多人协同开发,追踪和记载一个或者多个文件的历史记录,组织和保护源代码文档,统计工作量,并行开发,跟踪记录整个软件的开发过程,减轻开发人员的负担,节省

2021-01-26 18:13:17 255 4

原创 什么是前端开发工程师

      鄙人是一名计算机软件专业的学生,刚进入到这个邻域可谓是前途一片迷茫,加之自己的学习方法有问题,导致所学基础知识极其不扎实,在之后的学习上碰到非常多的困难,甚至一度想过放弃,所以在学一门技术之前一定要了解这门技术它是干什么的,它是怎么来的,最重要的还是它的底层原理的实现。      在这里我想引用一下哲学中的三个终极问题:“它是谁,它从哪里来,要到哪里去”,只不过我把“你”改成了“它”,这里的这个

2021-01-25 12:56:29 6942 2

空空如也

空空如也

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

TA关注的人

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