- 博客(16)
- 收藏
- 关注
原创 初步学习promise,从使用方法到常见题目
什么是promisepromise是JS的一种异步编程解决方案。setTimeout和Ajax都是常见的异步回调方案,但是他们都有一个问题,就是对于复杂的回调会产生层层嵌套的问题,代码会像一个横放的金字塔意一样一层套一层,编码体验极差。promise的多重链式回调可以很好的解决这个问题。怎么用promise首先promise对象代表的是现在未完成,但是将来会完成的操作。它一共有三个状态:...
2019-05-08 21:40:21
309
原创 简单理解MVVM模式
什么是MVVMMVVM是model-view-ViewModel的简称,是一种前端开发的架构模式,其核心是数据的双向绑定。为什么会出现MVVM随着H5的发展和webapp的兴起,前端应用越来越复杂,对响应速度要求也越来越高,力求接近原生APP的用户体验。这时原来的开发模式中一个影响性能的问题就凸显了出来,那就是对DOM的大量操作。首先,在开发过程中会调用大量相同的DOM API ,操作复...
2019-05-05 21:38:40
540
原创 JS数组基本操作
创建var a = [1,2,3]var a = Array()增push():在末尾增加一个元素unshift():在首部增加一个元素ES6: fill() 填充数组参数:第一个元素(必须): 要填充数组的值第二个元素(可选): 填充的开始位置,默认值为0第三个元素(可选):填充的结束位置,默认是为this.length删pop(): 删除末尾的元素shift():删除...
2019-04-22 21:12:26
1981
1
原创 websocker初步学习
websocket是什么websocket是HTML5出的一个在TCP上的全双工通信协议。它和HTTP其实没多大关系。websocket有什么优点websocket允许服务端主动向客户端发送消息。...
2019-04-22 15:36:48
335
原创 flex布局,grid布局属性学习笔记
flex布局基本概念采用Flex布局的元素,称为Flex容器(flex container),简称”容器”。它的所有子元素自动成为容器成员,称为Flex项目(flex item),简称”项目”。容器默认存在两根轴:水平的主轴(main axis)和垂直的交叉轴(cross axis)。主轴的开始位置(与边框的交叉点)叫做main start,结束位置叫做main end;交叉轴的开始位置叫做...
2019-04-18 12:06:46
1066
1
原创 路由实现单页面原理初步了解
实现的基本原理是监听url的变化,截取url,然后根据url用Ajax请求数据,替换DOM。通常有两种实现路由的方式:1.hash模式2.history模式hash模式location对象有一个hash属性,它的作用是返回或设置url中从#开始的url。并且#后面的hash值的变化不会导致浏览器向服务器发送请求,也就不会导致页面刷新。hash值的变化会触发hashchange事件w...
2019-04-14 20:47:53
281
原创 cookie读写操作
1.写入cookie//设置cookie的名字,值,过期天数function setcookie(name,value,expiredays) { var exp = new Date(); exp.setTime(exp.getTime() + Days*24*60*60*1000) document.cookie = name + "=" + escape(value) + ";ex...
2019-04-14 16:05:57
370
原创 懒加载初步了解
实现关键点1.页面中的img元素不直接设置src属性,而是储存在一个属性里,比如data-src。到需要它加载的时候才通过js设置src路径。2.获取可视区域大小,元素的位置,滚动条滚动距离。获取屏幕可视窗口的大小原生:document.innerHeight || document.documentElement.clientHeightjquery:$(window).height...
2019-04-13 20:37:54
161
原创 HTML,CSS实用知识点笔记
CSS选择器优先级important > 内联> id选择器> class选择器 > 标签 | 伪类 | 属性选择 > 伪对象 > 通配符水平垂直居中1.绝对定位,位置上左50%然后margin为负div高宽的一半。如一个200X200的div居中div { position:absolute; left:50%; top:50%; margi...
2019-04-11 19:50:33
168
原创 js防抖与节流
函数防抖事件触发后延迟执行动作,适用于频繁触发的事件,如在百度搜索输入搜索内容,输入时不执行搜索,停止输入后经过一小段延迟执行搜索展示搜索结果。函数防抖的实现关键是对setTimeout函数的应用以搜索为例var timer; //设置定时器var search; //假设为输入内容search.Oninput = function debounce() { if(timer) {...
2019-03-26 14:20:06
3102
2
原创 HTTP强制缓存与对比缓存
强制缓存1.请求数据流程浏览器请求数据→已有缓存数据→直接使用缓存数据浏览器请求数据→无缓存数据→向服务器请求数据→将数据和规则存入缓存2.如何判断是否过期强制缓存是否过期由时间判断,主要通过Expire和cache-control两个规则字段。期中Expire是HTTP1.0下的标准字段,已经过时。cache-control是HTTP消息头,常用取值和意义如下:privat...
2019-03-21 19:27:26
1161
原创 js遍历json二维数组内容的方法
后台数据:前端ajax接收数据:接收到之后用eval(data)解析json数据,用eval(data).obj(obj为数据中数组的名字)选择我们想要获取内容的数组,再用each函数遍历这个数组即可。...
2019-03-18 20:11:32
1872
原创 jQuery ajax上传文件实例
jQuery ajax上传文件实例<form id="form" enctype="multipart/form-data"><input type="file" name="file"></form>var formdata= new FormData($("#form")[0]); $.ajax({ url...
2019-03-18 20:04:45
678
原创 HTTPS传输过程
HTTPS传输过程HTTPS传输过程主要涉及到对称加密和非对称加密两种方式,对称加密用来加密数据内容,非对称加密用来加密对称加密的秘钥。1.客户端发送HTTPS请求,将自己支持的一套加密规则发送给服务器。2.服务器选出一组加密规则并将加密公钥、网站地址、证书颁发机构等信息通过证书发送回客户端。3.客户端验证证书合法性,若证书受信任/用户接受了不受信任的证书客户端生成随机值(对称加密秘钥)...
2019-03-18 19:57:30
773
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人