自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

老皮的博客

多积累,多记录,多动脑,多运动,做最优质的猪~

  • 博客(29)
  • 收藏
  • 关注

原创 JS -- 使用sort() 方法对数组进行排序

sort() 方法用于对数组的元素进行排序,有返回值,返回值是数组的引用 arrayObject.sort(sortby) 如果没有参数:按字母(字符编码)顺序排序 如果想按照其他标准进行排序,就需要提供比较函数,该函数要比较两个值,然后返回一个用于说明这两个值的相对顺序的数字。比较函数应该具有两个参数 a 和 b,其返回值如下: 若 a 小于 b,在排序后的数组中 a 应该出现在 b 之前,...

2019-02-28 17:24:41 372

原创 刷题总结1

项目工程化中的–save-dev 和 –save 的区别 安装模块和插件时,都写入package.json文件: –save-dev : 写入devDependencies 对象,用于开发环境 -save : 写入dependencies 对象,用于生产环境 document.forms返回HTMLCollection对象,是所有form元素的集合 var collection = d...

2019-02-28 16:36:44 536

原创 JS -- 深浅拷贝

JS的数据类型分为基本数据类型、引用数据类型(复合数据类型) 基本类型:按值传递,传入函数的是数据的副本,不改变原值 它是简单的值,直接存放再内存栈中 引用类型:按引用传递,传入的是该数据的引用 它是一个数组或者对象,存放在内存栈中的是指向该对象的指针,完整的对象存放在内存堆中 浅拷贝: 所要复制的对象的属性不是引用,则通过遍历拷贝出来的新的对象,与源对象有相同的引用 function shall...

2019-02-27 15:58:20 213

原创 JS算法4 -- 排序 -- 堆排序

堆排序: 是指利用堆这种数据结构所设计的一种排序算法 堆: 是一个近似完全二叉树的结构,并同时满足堆积的性质:即子结点的键值或索引总是小于(或者大于)它的父节点。 var arr = [8,6,4,7,1]; function heapSort(arr){ if(arr == null || arr.length < 2){ return; } //1...

2019-02-26 23:11:57 211

原创 JS -- 事件处理

事件模型 特征 IE4~8模型 DOM2模型 绑定处理程序 attachEvent() addEventListener() 解绑处理程序 detachEvents() removeEventListen() Event对象 window.event 作为变元传递给处理程序 阻止默认动作 返回false 返回false,preventDefault() 事件传播方式...

2019-02-26 12:53:57 232

转载 jQuery复习笔记

原文地址: https://docs.huihoo.com/jquery/jquery-fundamentals/zh-cn/index.html 选择器 Id选择器 类选择器 属性选择器 $('input[name=first_name]'); // 当心,这可能会非常慢 伪选择器 $('a.external:first'); $('tr:odd'); $('#myForm :input')...

2019-02-25 23:11:49 339

原创 JS -- Ajax原理

Ajax:JavaScript and XML,异步JavaScript与XML 在不刷新页面的情况下,更新部分页面内容 为什么请求需要异步: 同步请求,是当使用send()发生请求时,会阻止用户动作,并等待响应;而异步请求,不打扰用户动作 Ajax通信流: (1)用户活动和时间触发器 (2)客户端发送XHR、iFrame、脚本、图像等给服务器端 (3)服务器端接收请求,做处理,生成XML、JSO...

2019-02-25 14:28:24 630

原创 JS -- 数组的操作

移除数组元素 delete 只是设置将该元素为undefined; 删除所有元素可以让length为0; 栈和队列形式的数组 栈形式: push() 尾部追加元素; pop() 尾部移除元素 队列形式: unshift() 头部添加元素 shift() 头部移除元素 操作数据 concat() 参数追加到调用该方法的数组上,返回追加后结果,不修改原数组 join()...

2019-02-25 00:05:05 173

原创 JS -- 数组中去重问题

今天碰到一个去重的问题,大概就是,要将对象的描述都整合在一起。 类似于描述人,可以有姓名,身份证号,性别,身高,兴趣爱好等。 多种描述都是针对同一个人,即姓名和身份证号唯一,那就应该整合在同一个对象里。 JS中提供了Object.assign()方法,用于将所有可枚举属性的值从一个或多个源对象复制到目标对象。它将返回目标对象。 数组的splice()方法用于在原数组中进行添加、替换、删除元素 数...

2019-02-24 20:51:27 214

原创 JavaScript复习1 -- 浏览器兼容性问题、作用域、数据类型、原型与原型链

JavaScript复习1 JavaScript伪URL:用来激活脚本(但存在安全问题,潜在问题) <noscript>元素:用来在无法显示<script>中脚本时,显示<noscript>元素包围的内容 //使用<meta>标签做重定向 &amp

2019-02-23 19:18:48 247

原创 网络协议分析3 -- HTTP

HTTP请求报文: 常见的请求头字段 解释 Accept 可接受的响应内容类型(Content-Types) Origin 发起一个针对跨域资源共享的请求 Host 客户端的主机、端口号 User-agent 客户端程序 Connection TCP连接持久或非持久 Accept 客户端能接受的媒体格式 Accept-Encoding 可接受的响应内容的编...

2019-02-21 22:59:53 943

原创 网络协议分析2 -- 计算机网络体系结构

五层协议的体系结构(五层) 物理层:是在确定与传输媒体的接口有关的一些特性 ( 考虑如何在连接各种计算机的传输媒体上传输数据比特流 )【比特流】 数据链路层:封装成帧,透明传输,差错校验【帧】 网络层:是为主机之间提供逻辑通信【数据报】 传输层:是为应用进程之间提供端到端的逻辑通信【报文段】 应用层:是通过应用程序间的交互来完成特定网络应用【报文】 TCP/IP的体系结构(四层) 网络接口层、网际...

2019-02-21 21:44:58 258

原创 网络协议分析1 -- TCP -- 三次握手、四次挥手

三次握手的过程: 第一次:客户端发送【SYN报文】,指明打算连接的端口、初始序号ISN(seq=x) 第二次:服务器端发送【SYN报文】作为应答,指明初始序号ISN(seq=y);和【ACK报文】,指明确认序号为x+1 第三次:客户端发送【ACK报文】,将确认序号设 为y+1,同意建立连接。 为什么一定要有第三次握手: ①为了防止已失效的连接请求报文段突然又传送到了服务端,因而产生错误 ②为了解...

2019-02-21 20:24:19 292

原创 JS算法3 -- 排序 --归并排序、快速排序

归并排序 1.左右两边先排序; 2.再借助辅助数组,指针在左右两个数组中移动,两指针作比较,小的就往辅助数组中填; 3.整体在辅助数组中有序后,拷贝回原数组。 //归并排序 时间复杂度O(n*logn) var list = [5,2,6,1,22,77,4,12]; console.log('未排序',list); function merge(arr,l,mid,r){ var hel...

2019-02-21 17:43:59 258

原创 JS算法2 -- 排序 -- 冒泡排序、选择排序、插入排序

冒泡排序 1.对每一对相邻元素做比较。如果第一个比第二个大,就交换他们两个。 2.从开始第一对到结尾的最后一对,最后的元素应该会是最大的数。拿去最后一个数。 3.调换完一遍就重头开始再做比较。 4.直到没有任何一对数字需要比较。 ( 每轮都让最大的放在最后一位,定下,前面的部分再次将最大的换到最后 ) var list=[9,5,4,6,12,3,1]; function swap(arr,i,j...

2019-02-20 22:03:55 173

原创 JS算法1 -- 数组中找数 -- 遍历、二分法

数组中找数 – 遍历、二分法 var list = [1,5,7,8,11,23,54]; //遍历 时间复杂度O(n) function findNum1(arr,num){ for(var i=0,len=arr.length;i<len;i++){ if(num === arr[i]){ return i; } ...

2019-02-20 17:32:55 420

原创 项目记录2 -- 本地存储 -- localStorage

本地存储 – localStorage 登录请求成功后,将返回的result存入localStorage //action/login.js import Ajax from '../utils/ajax'; import Storage from '../utils/storage'; import {message} from 'antd'; const sto = new Storage...

2019-02-20 13:28:16 757

原创 项目记录1 -- 路由管理 -- React Router

路由管理 – React Router 将所有组件在路由的管理下进行渲染 //entry/index.jsx import Routes from 'framework/Routes.jsx'; ReactDOM.render( <Routes />, document.getElementById('framework') ); 把子路由都拎出去,以便以后增加页面,添加路...

2019-02-20 12:04:53 161

原创 MVC、MVVM

MVC是一种架构设计模式,强制将业务数据 (Model) 与用户界面 (View) 隔离,用控制器 (Controller) 管理逻辑和用户输入。 Model: 主要与业务数据有关,负责保存应用数据和后端交互同步应用数据,或校验数据,当Model改变时,通知View做出反应 View: 是Model的可视化表示,表示当前状态的视图,用户可以与View交互 Controller: 负责连接View和...

2019-02-19 17:07:47 158

原创 关于React -- 组件间的通信、高阶组件、容器型组件、展示型组件、生命周期、阻止合成事件传播

关于React 1、将用户界面抽象成一个个的组件; 2、有个组件这层抽象,react把代码和真实渲染目标隔离开来,除了可以在浏览器端渲染到DOM来开发网页外,还能用于开发原生移动应用; 3、并不是完整的MVC/MVVM框架,主要是**View**,又包括了View和Controller; 4、提供了**虚拟DOM**(把真实的DOM转化成JS对象树),每次更新页面,都会对数据进行diff算法,变化...

2019-02-19 17:01:21 467

原创 异步编程 -- 使用Promise、Generator、async/await 规避回调地狱

关于回调地狱 在异步编程中,许多操作都会放在回调函数(callback)中,每增加一个异步请求,就会多添加一层回调函数的嵌套,多个异步操作就形成了强耦合,只要有一个操作需要修改,它的上层回调函数和下层回调函数,可能都要跟着修改,过多的回调也就会导致陷入**“回调地狱”**。 规避回调地狱的方法: promise对象 它不是新的语法功能,而是一种新的写法,允许将回调函数的嵌套,改成链式调用。 P...

2019-02-19 16:01:46 390

原创 position定位

position定位 position定位使得元素脱离标准流 absolute:生成绝对定位的元素,相对于 static 定位以外的第一个父元素进行定位。 fixed:生成绝对定位的元素,相对于浏览器窗口进行定位。 relative:生成相对定位的元素,相对于其正常位置进行定位。 static:默认值。没有定位,元素出现在正常的流中。 inherit:从父元素继承 position 属性的值。 ...

2019-02-19 12:53:52 158

原创 静态布局、流式布局、自适应布局、响应式布局、弹性布局

静态布局: 特点:没有兼容性问题 PC:居中布局,所有样式使用绝对宽度/高度(px),设计一个Layout,在屏幕宽高有调整时,使用横向和竖向的滚动条来查阅被遮掩部分; 移动设备:另外建立移动网站,单独设计一个布局,使用不同的域名如wap.或m. 流式布局: 特点:屏幕分辨率变化时,页面里元素的大小会变化而但布局不变。 设计:使用%百分比定义宽度,高度大都是用px来固定住,可以根据...

2019-02-19 12:51:31 1864

原创 CSS选择器的优先级

CSS选择器的优先级 !important > 行内 > id > class > 标签 > * > 浏览默认 计算权值:行内1000 | id100 | class10 | 标签1 快速比较:先数id,再数class,再数tag ...

2019-02-19 12:47:59 180

原创 浮动

CSS中的定位机制:标准流(普通流)、定位、浮动 float 四个参数:left、right、none、inherit 解决多个div向下排列的问题,使用float进行水平排列 添加float属性,使得元素脱离正常的标准流,但仍然占据文档流的文本空间,还是会影响周围的元素的(文本环绕现象) 内联元素也会因此获得宽高 浮动的副作用: 塌陷 ( 父元素高度auto、子元素div使用f...

2019-02-19 12:44:13 97

原创 ajax跨域

ajax跨域 前台调用后台服务接口的时候,接口不是同一个域,就会产生跨域问题 发生ajax跨域的原因: 浏览器限制、跨域、XHR(XMLHttpRequest)请求 1、浏览器限制: 指定参数,使浏览器不做校验 命令行参数启动: chrome --disable-web-security --user-data-dir=g:\temp3 2、XHR(XMLHttpRequest)请求: 发...

2019-02-19 11:23:43 115

原创 盒子模型

盒子模型 html元素都看成盒子,包括了margin、border、padding、content 在CSS中盒模型被分为两种,第一种是w3c的标准模型,另一种是IE的传统模型 W3C盒子模型 (标准盒子模型) 当我们对元素指定width、height时,只是设置了content,而盒子的总宽度/高度 = width/height + padding + border + margin ...

2019-02-19 11:04:45 106

原创 CSS3 -- 慕课学习笔记

边框效果 border-radius 圆角效果 box-shadow 边框阴影 box-shadow: X轴偏移量 Y轴偏移量 [阴影模糊半径] [阴影扩展半径] [阴影颜色] [投影方式]; 阴影模糊半径与阴影扩展半径的区别 阴影模糊半径:此参数可选,其值只能是为正值,如果其值为0时,表示阴影不具有模糊效果,其值越大阴影的边缘就越模糊; 阴影扩展半径:此参数可选,其值可以是正负值,如果...

2019-02-19 10:58:07 235

原创 H5存储 -- 慕课学习笔记

H5存储学习笔记 常见存储:cache、磁盘文件、数据库、内存 H5以前: 使用cookies: http请求头会带上这个cookies 大小只能到4K 子域名会受到主域名的污染 随着http带到网络上也会有安全问题 UserData 只有IE支持 XML文件 64K google Gears H5存储解决的问题: 4K大小的问题、请求头常带存储信息的问题、关系型存储的问题、跨浏览...

2019-02-19 10:34:14 182

空空如也

空空如也

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

TA关注的人

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