自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Boostrap(五)组件

一、Boostrap组件——字体图标概述包括250多个来自 Glyphicon Halflings 的字体图标。Glyphicons Halflings 一般是收费的,但是他们的作者允许 Bootstrap 免费使用。为了表示感谢,希望你在使用时尽量为 Glyphicons 添加一个友情链接。如何使用字体图标出于性能的考虑,所有图标都需要一个基类和对应每个图标的类。把下面的代码放在任何地方都可以正常使用。注意,为了设置正确的内补(padding),务必在图标和文本之间添加一个空格。不要和

2022-01-14 15:47:35 234

原创 Bootstrap(四)CSS全局样式

一、CSS全局样式——辅助类文本颜色类柔和的:<p class="text-muted">...</p>首选项:<p class="text-primary">...</p>成功:<p class="text-success">...</p>信息:<p class="text-info">...</p>警告:<p class="text-warning">...</p&g

2022-01-14 15:44:21 2231

原创 Boostrap(三)全局样式

一、CSS全局样式——表单表单样式概述单独的表单控件会被自动赋予一些全局样式。所有设置了 .form-control 类的 <input>、<textarea> 和 <select> 元素都将被默认设置宽度属性为 width: 100%;。 将 label 元素和前面提到的控件包裹在 .form-group 中可以获得最好的排列。基本实例不要将表单组直接和输入框组混合使用。建议将输入框组嵌套到表单组中使用。内联表单为 <f..

2022-01-14 15:37:41 601

原创 Boostrap(二)全局CSS样式

一、全局CSS样式——概述HTML5文档类型Bootstrap 使用到的某些 HTML 元素和 CSS 属性需要将页面设置为 HTML5 文档类型。在你项目中的每个页面都要参照下面的格式进行设置。移动设备优先Bootstrap 是移动设备优先的。针对移动设备的样式融合进了框架的每个角落,而不是增加一个额外的文件。为了确保适当的绘制和触屏缩放,需要在 <head> 之中添加 viewport 元数据标签。禁用移动设备上的缩放功能在移动设备浏览器上,通过为视口(view.

2022-01-14 15:28:43 1879

原创 Bootstrap(一)

一、bootstrap概述1 什么是BootstrapBootstrap是一个基于HTML、CSS和JavaScript语言编写的框架,具有简单、灵活的特性, 拥有样式库、组件和插件。 Bootstrap常用来开发响应式布局和移动设备优先的Web项目,能够帮助开发者快速搭建前端页面2.Bootstrap框架的特点:3 .Bootstrap的组成4.为什么使用bootstrap?移动设备优先。框架包含了贯穿于整个库的移动设备优先的样式。浏览器支持。所有的主流浏览器都支持..

2022-01-14 15:18:27 1734

原创 动态规划法

动态规划(简称DP)的思想是把一个大的问题进行拆分,细分成一个个小的子问题,且能够从这些小的子问题的解当中推导出原问题的解。一、性质1、最优子结构性:既所拆分的子问题的解是最优解。2、无后效性:即子问题的解一旦确定,就不再改变,不受在这之后、包含它的更大的问题的求解决策略影响。3、子问题重叠性质:既在求解的过程当中,每次产生的子问题并不总是新问题,有些子问题会被重复计算多次。动态规划算法正是利用了这种子问题的重叠性质,对每一个子问题只计算一次,然后将其计算结果保存在一个表格中,当再次需.

2022-01-14 15:07:41 153

原创 JavaScript之立即执行函数

我们知道,在一般情况下,函数必须先调用才能执行,如下所示,我们定义了一个函数,并且调用,function fn(){ console.log(1); } fn();打印结果为:如果不调用的话,我们打印的结果永远不会显示。所以这里就会提到我们的立即执行函数,所谓立即执行函数,就是不需要调用,立马就能执行的函数。立即执行函数有两种最常见的写法:(function(){})() (function(){}())举个例子:(funct...

2022-01-05 22:39:31 993

原创 数据在不同页面的传递(URL参数获取)

网页中,我们常常遇到这种情况,当我们在某个页面输入信息的时候,会跳转到另一个页面,并且会将我们输入的信息传递到另一个页面中,怎样操作呢?今天,我们就来实战一下,比如,现在有两个页面,当我们在一个页面输入用户信息的时候,就会跳转到另一个页面并显示,xx欢迎登录的界面。 先来看看设计思路:第一个登录页面,里面有提交表单, action 提交到index.html页面第二个页面,可以使用第一个页面的参数,这样实现了一个数据不同页面之间的传递效果第二个页面之所以可以使用第一个页面的数据,是...

2022-01-05 22:36:22 339

原创 JSON和JSONP区别浅析

JSONP 是一种无需考虑跨域问题即可传送 JSON 数据的方法。JSON(JavaScript Object Notation)和JSONP(JSON with Padding)虽然只有一个字母的差别,但其实他们根本不是一回事:JSON是一种数据交换格式,而JSONP是一种非官方跨域数据交互协议。 我们拿谍战片来打个比方,JSON是地下党们用来书写和交换情报的“暗号”,而JSONP则是把用暗号书写的情报传递给自己同志时使用的接头方式。一个是描述信息的格式,一个是信息传递双方约定的方...

2022-01-05 22:33:15 656

原创 GET请求和POST请求

我们知道,HTTP是超文本传输协议,是一个基于请求与响应,无状态的,应用层的协议。举个简单的例子:客户端(浏览器)向服务器 提交HTTP请求,服务器收集到请求后向客户端返回响应(响应包含请求的状态信息以及被请求的内容) 那么在客户端与服务器之间进行请求-----响应时,有两种最常用到的请求方式是:GETPOST接下来我们就来看看这两种请求方式。一、GET请求1、什么是GET请求 GET请求是最常见的请求类型,最常用于向服务器查询某些信...

2022-01-05 22:15:17 1636

原创 正则表达式(三)

一、String类中的方法1、match()方法match()方法:根据正则匹配出所有符合要求的内容匹配成功后将其保存到数组中,匹配失败则返回false。案例演示:var str = "It's is the shorthand of it is";var reg1 = /it/gi;str.match(reg1); // 匹配结果:(2) ["It", "it"]var reg2 = /^it/gi; str.match(reg2); // 匹配结果:["It"]v

2021-12-24 14:58:06 147

原创 正则表达式(二)

一、量词符与括号字符1、量词符 量词符:用来设定某个模式出现的次数。 字符 说明 示例 结果 ? 匹配?前面的字符零次或一次 hi?t 可匹配ht和hit + 匹配+前面的字符一次或多次 bre+ad 可匹配范围从bread到bre…ad ..

2021-12-24 14:51:40 427

原创 正则表达式(一)

一、正则表达式1、什么是正则表达式正则表达式:是一种描述字符串结构的语法规则,是用于匹配字符串中字符组合的模式,同时正则表达式也是对象。2、正则表达式的特点 特点:正则表达式的灵活性。逻辑性和功能性非常强。可以迅速地用极简单的方式达到字符串的复杂控制。3、正则表达式的使用创建正则对象:// 字面量方式var 变量名 = /表达式/;// RegExp构造函数方式// 或者var 变量名 = RegExp(/表达式/);var ...

2021-12-24 14:44:29 317

原创 jQuery选择器

一、选择器是 jQuery 的根基, 在 jQuery 中, 对事件处理, 遍历 DOM 和 Ajax 操作都依赖于选择器jQuery 选择器的优点:简洁的写法完善的事件处理机制二、基本选择器是 jQuery 中最常用的选择器, 也是最简单的选择器, 它通过元素 id, class 和标记名来查找 DOM 元素三、如果想通过 DOM 元素之间的层次关系来获取特定元素, 例如后代元素, 子元素, 相邻元素, 兄弟元素等, 则需要使用层次选择器注意: (“prev ~ ...

2021-12-24 14:35:08 135

原创 JavaScriptES6(三)

一、函数1、函数形参的默认值:在很多情况下,需要在使用函数的时候给定默认参数,在ES5标准中一般会这样写: function fun(name,age,cb){ name = typeof(name !== 'undefined')?name: '张三' age = typeof(age !== 'undefined')?age: 20 cb = typeof(cb !== 'undefined'..

2021-12-10 21:44:57 643

原创 JavaScriptES6(二)

一、Symbol:ES5中提供了6种数据类型分别是:undefined、null、boolean、string、number、object。ES6中新增了一种数据类型Symbol来表示唯一的值,每个创建的Symbol都是唯一的,这样在实际运用中可以创建一些唯一的属性及定义私有变量。例如: let s1 = Symbol; //直接创建 let s2 = Symbol('mySymbol'); //传入字符串创建1、目前前端项目都会采用模块化构建,为了防止对象属性名被..

2021-12-10 21:37:40 511

原创 JavaScriptES6(一)

一、let及const1、是ES6新增的两种新的声明格式,用于补全ES5标准中var声明变量的不足:在JavaScript中用'var'来声明变量会出现变量提升的情况,即通过"var"声明的变量,系统都会把声明隐式的升至顶部,这样的特性往往会让刚接触JavaScript及习惯其他语言的开发人员不适应,导致程序出现问题。2、ES5中定义作用域有两种:全局作用域和函数作用域,ES6中新增了块级作用域,用"{}"表示。块级作用域用于声明作用域之外无法访问的变量,主要有两种:(1)函数内部块级作用域:

2021-12-10 21:27:46 685 1

原创 贪心算法和动态规划的区别

一、动态规划动态规划(简称DP)的思想是把一个大的问题进行拆分,细分成一个个小的子问题,且能够从这些小的子问题的解当中推导出原问题的解。性质1、最优子结构性:既所拆分的子问题的解是最优解。2、无后效性:即子问题的解一旦确定,就不再改变,不受在这之后、包含它的更大的问题的求解决策略影响。3、子问题重叠性质:既在求解的过程当中,每次产生的子问题并不总是新问题,有些子问题会被重复计算多次。动态规划算法正是利用了这种子问题的重叠性质,对每一个子问题只计算一次,然后将其计算结果保存在一个表...

2021-12-10 21:17:41 7447

原创 JavaScript网页特效

一、元素偏移量offset系列1、offset概述offset含义:offset的含义是偏移量,使用offset的相关属性可以动态地获取该元素的位置、大小等。 属性 说明 offsetLeft 返回元素相对其带有定位的父元素左边框的偏移 offsetTop 返回元素相对其带有定位的元素上方的偏移父 offsetWidth 返回自身的宽度(包括p

2021-12-10 20:43:25 129

原创 JavaScriptBOM(二)

一、JavaScript执行机制1、单线程单线程:JavaScript语言的一大特点就是单线程,也就是说,同一个时间只能做一件事。console.log(1); //先输出了1、2setTimeout(function () {console.log(3); //,等待5秒后输出3},5000);console.log(2);2、同步和异步 同步:所谓同步,就是前一个任务结束后再执行后一个任务,程序的执行顺序与任务的排列顺序是一致的、同步的。异步:所谓异步,...

2021-12-10 20:37:01 524

原创 JavaScriptBOM(一)

一、BOM简介BOM:浏览器对象模型(Brower Object Model,BOM)提供了独立于内容而与浏览器窗口进行交互的对象,其核心对象是window。BOM与DOM的区别DOM是文档对象模型,把文档当作一个对象来看待,它的顶级对象是document。BOM是浏览器对象模型,是把浏览器当做一个对象来看待,它的顶级对象是window。构成:二、window对象的常见事件1、窗口加载事件 window.onload:是窗口(页面)加载事件,当文档内容(包括图像、..

2021-12-08 21:11:27 1228

原创 http和https的区别

超文本传输协议HTTP协议被用于在Web浏览器和网站服务器之间传递信息,HTTP协议以明文方式发送内容,不提供任何方式的数据加密,如果攻击者截取了Web浏览器和网站服务器之间的传输报文,就可以直接读懂其中的信息,因此,HTTP协议不适合传输一些敏感信息,比如:信用卡号、密码等支付信息。为了解决HTTP协议的这一缺陷,需要使用另一种协议:安全套接字层超文本传输协议HTTPS,为了数据传输的安全,HTTPS在HTTP的基础上加入了SSL协议,SSL依靠证书来验证服务器的身份,并为浏览器和服务器之间的通信加密

2021-12-08 19:30:15 94

原创 JavaScript中强引用和弱引用

在计算机程序设计中,有一个弱引用的概念: 一个对象若只被弱引用所引用,则被认为是不可访问(或弱可访问)的,并因此可能在任何时刻被回收。在JS中,WeakMap 和 WeakSet 给我们提供了弱引用的能力。WeakMap 、WeakSet要说WeakMap,先来说一说Map。Map 对象保存键值对,并且能够记住键的原始插入顺序。任何值(对象或者原始值) 都可以作为一个键或一个值。Map对对象是强引用:const m = new Map();let obj = { a: 1 };m.

2021-12-08 19:26:25 751

原创 JavaScriptDOM(七)键盘事件

一、键盘事件的常用方法键盘事件是指用户在使用键盘时触发的事件。例如,用户按Esc键关闭打开的状态栏,按Enter键直接完成光标的上下切换等。常用的键盘事件如下表所示。 事件名称 事件触发时机 keypress 某个键盘按键被按下时触发,不识别功能键,如Ctrl、Shift、箭头等 keydown 某个键盘按键被按下时触发 keyup 某个键盘按键.

2021-12-02 16:51:43 1213

原创 JavaScriptDOM(六)鼠标事件

一、鼠标事件的常用方法鼠标是计算机的一种输入设备,也是计算机显示系统纵横坐标定位的指示器,所以鼠标事件是Web开发中最常用的一类事件。常见的鼠标事件如下表所示: 事件名称 事件触发时机 onclick 单击鼠标左键时触发 onfocus 获得鼠标指针焦点触发 onblur 失去鼠标指针焦点触发 onmouseover

2021-12-02 16:46:59 935

原创 JavaScriptDOM(五)

一、什么是事件对象当一个事件发生后,跟事件相关的一系列信息数据的集合都放到这个对象里面,这个对象就是event。只有有了事件event才会存在,它是系统自动创建的,不需要传递参数。二、事件对象的使用在标准浏览器中会将一个event对象直接传入到事件处理程序中,而早期版本的IE浏览器(IE 6~IE 8)中,仅能通过window.event才能获取事件对象。注意:因为在事件触发时就会产生事件对象,并且系统会以实参的形式传给事件处理函数。所以,在事件处理函数中需要用一个形参来接收事件对象e.

2021-12-02 16:07:06 301

原创 JavaScriptDOM(四)

一、事件:用户进行的某种操作二、事件源:触发事件的对象三、事件处理程序(函数):当事件被触发后所执行的操作(代码)四、注册事件在JavaScript中,注册事件(绑定事件)有两种方式,即传统方式注册事件和事件监听方式注册事件。1、传统方式元素对象.事件 = 事件的处理程序;// 示例oBtn.onclick = function () { }注意:该方式注册事件的特点在于注册事件的唯一性,即同一个元素同一个事件只能设置一个处理函数,最后注册的处理函数将会覆盖前面注册的处

2021-12-02 15:57:23 289

原创 js贪心算法

贪心算法是指在对问题求解时,总是做出在当前看来是最好的选择。也就是说,不从整体最优上加以考虑,它所做出的仅是在某种意义上的局部最优解。 贪心算法没有固定的算法框架,算法设计的关键是贪心策略的选择。必须注意的是,贪心算法不是对所有问题都能得到整体最优解,选择的贪心策略必须具备无后效性,即某个状态以后的过程不会影响以前的状态,只与当前状态有关。所以对所采用的贪心策略一定要仔细分析其是否满足无后效性。一、基本思路:1、建立数学模型来描述问题。2、把求解的问题分成...

2021-12-02 15:35:40 1197

原创 JavaScriptDOM(三)

节点:网页中的所有内容都是节点1、节点的属性(1)节点类型:nodeTypea、元素节点 --- 1b、属性节点 --- 2c、文本节点 --- 3 文字、空格、换行都是文本 (2)节点名称:nodeName(3)节点值: nodeValue2、节点的层级(1)根节点:<html>就是根节点,有且只有一个(2)父节点:一个节点的上级节点(3)子节点:一个节点的下级节点(4)兄弟节点:具有相同父节点的节点3、节点的操作:...

2021-11-26 20:08:28 230

原创 JavaScriptDOM(二)

一、DOM1、排他思想:将所有元素(包括自己)的效果全部全部清除,重新设置当前元素。鼠标事件:a、鼠标经过:mouseoverb、鼠标离开:mouseout2、属性的操作:(1)获取属性值:a、对于元素(标签)的固有属性有两种方法:元素名.固有属性元素名.getAttribute('固有属性') b、对于用户自定义的属性:元素名.getAttribute('自定义属性')(2)设置属性值a、固有属性值的设置:element.属性名 = 值...

2021-11-26 20:03:58 135

原创 JavaScriptDOM(一)

DOM:Document Object Model1、WebAPI:浏览器提供的一组操作浏览器功能和页面元素的接口 2、JavaScript的组成:1)ECMAScript:是JavaScript的核心。定义一套语法规范,JavaScript实现了这些语法规范。(2)DOM:文档对象模型A、是W3C组织推出的指针HTML/XHTML语言的标准的编程接口。B、通过DOM接口可以对HTML页面元素进行访问、设置C、DOM树:html文档就是一棵树(文档模型树)...

2021-11-26 19:59:00 314

原创 JS归并排序

一、基本思想先将序列一次次分成子序列,直到子序列长度为1;再将已有序的子序列合并,得到完全有序的序列。运用了分而治之的思想(分治法)。二、例子输入数组 [ 2, 5, 3 , 10, -3, 1 , 6 , 4];初始状态如下:分治思想如下:首先把数组依次折半,分成小的子数组,直到每一个子数组的长度都为1;然后合并子数组,在合并的过程中进行排序;将数组分成子数组的方法比较简单,不过多介绍;下面介绍一下合并操作,以最后一次合并为例:下图是最后一次合并前的两个...

2021-11-26 19:50:03 945

原创 js堆排序算法

一、什么是堆堆首先是一个完全二叉树,堆分为大顶堆和小顶堆;大顶堆:每个节点的值大于或等于其左右孩子节点的值,称为大顶堆。小顶堆:每个节点的值小于或等于其左右孩子节点的值。注意:每个节点的左右孩子节点的大小关系并没有限定。大顶堆举例首先其为一个完全二叉树,且其每个节点的值都大于或者等于其左右孩子节点的值。完全二叉树从上到下,从左到右依次编号,就可以将其进行顺序存储,我们从根节点开始,从0开始编号,存入数组如下:二、堆特点由大顶堆定义知道,如果我们从上到...

2021-11-18 17:28:35 1341

原创 js快速排序算法

快速排序算法快速排序(Quicksort)是对冒泡排序算法的一种改进。排序流程快速排序算法通过多次比较和交换来实现排序,其排序流程如下:(1)首先设定一个分界值,通过该分界值将数组分成左右两部分。(2)将大于或等于分界值的数据集中到数组右边,小于分界值的数据集中到数组的左边。此时,左边部分中各元素都小于或等于分界值,而右边部分中各元素都大于或等于分界值。(3)然后,左边和右边的数据可以独立排序。对于左侧的数组数据,又可以取一个分界值,将该部分数据分成左右两部分,同样在左边放置较小..

2021-11-18 17:14:27 360

原创 js插入排序

插入排序插入排序,一般也被称为直接插入排序。对于少量元素的排序,它是一个有效的算法。插入排序是一种最简单的排序方法,它的基本思想是将一个记录插入到已经排好序的有序表中,从而一个新的、记录数增1的有序表。在其实现过程使用双层循环,外层循环对除了第一个元素之外的所有元素,内层循环对当前元素前面有序表进行待插入位置查找,并进行移动基本思想插入排序的工作方式像许多人排序一手扑克牌。开始时,我们的左手为空并且桌子上的牌面向下。然后,我们每次从桌子上拿走一张牌并将它插入左手中正确的位置。为了找到一张牌的..

2021-11-18 17:10:27 328

原创 js冒泡排序

冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果顺序(如从大到小、首字母从Z到A)错误就把他们交换过来。走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端(升序或降序排列),就如同碳酸饮料中二氧化碳的气泡最终会上浮到顶端一样,故名“冒泡排序”。冒泡排序算法的原理如下: 比较相邻的元素。如果第一个比第二个大

2021-11-18 17:04:57 119

原创 javascirpt继承

ES6 之前并没有给我们提供extends继承我们可以通过构造函数+原型对象模拟实现继承,被称为组合继承1.call():将父类的this指向子类的this,这样就可以实现子类继承父类的属性。fun.call(thisArg,arg1,arg2,......)thisArg:当前调用函数 this 的指向对象 arg1,arg2: 传递的其他参数function Father(uname, age) {// Father构造函数是父类 this.uname = uname;

2021-11-18 16:50:52 191

原创 javascript对象原型

JavaScript 常被描述为一种基于原型的语言 (prototype-based language)——每个对象拥有一个原型对象,对象以其原型为模板、从原型继承方法和属性。原型对象也可能拥有原型,并从中继承方法和属性,一层一层、以此类推。这种关系常被称为原型链 (prototype chain),它解释了为何一个对象会拥有定义在其他对象中的属性和方法。准确地说,这些属性和方法定义在Object的构造器函数(constructor functions)之上的prototype属性上,而非对象实例本身。

2021-11-18 16:04:21 489

原创 Js中this的指向和错误处理

一、this的指向1、函数中的this (1)构造方法中的this,指向新创建的对象 function Person(name) { this.name = name; } var p1 = new Person("张三") (2)直接通过函数名调用函数时,this指向全局对象window ...

2021-11-17 21:42:37 270

原创 JavaScript面向对象编程

1、面向过程:核心是解决问题的过程2、面向对象:核心是对象。关注每个对象在解决问题中的行为 (1)封装性:对象是属性(静态特征)和行为(动态特征)的结合体(封装体) (2)继承性:父类(基类)的属性和行为可以派生到子类中。子类不需要重复定义 (3)多态性:同一个消息传递给不同的对象,得到的结果不同。 3、类:具体相同属性和行为的对象的抽象 4、对象:是类的实例(是类的具体体...

2021-11-17 21:38:36 310

空空如也

空空如也

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

TA关注的人

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