js消抖(debounce)与节流(throttle)
节流:如果一个函数持续的频繁的触发,那么让他在一定的时间间隔后再触发。感觉就像是过安检,人多的时候隔一段时间放进去几个。
消抖:如果一个函数持续的触发,那么只在它结束过一段时间只执行一次。像是两个人的对话,A在不停的balabala,如果他说话有停顿,但是停顿的时间不够长,就认为他没有说完,当停顿的时间足够长才认为A说完了,然后B开始回答。输入联想是消抖,当输入停顿时间足够长再去查询,如果连续输入(停顿时间短)就不去调接口。
消抖和节流都是某个行为持续的触发,不同之处在于是要优化到减少他的执行次数还是优化到只执行一次。
123消抖<input onkeyup="keyupHandle(event)">节流<input onkeyup="keyupHandle2(event)">
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162// 消抖fun ...
git每次拉代码都需要输密码?
sourcetree每次拉代码都需要输密码?在.git目录有个config文件,在路径前配置下用户名和密码
12345678910[core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true ignorecase = true precomposeunicode = true[remote "origin"] url = http://用户名:密码@url.git fetch = +refs/heads/*:refs/remotes/origin/*
vscode每次拉代码都需要输密码?在code打开推送的代码目录并打开终端输入以下代码
1git config --global credential.helper store
一般来说执行完上述命令,第一次推送需要再次填一次账号密码,之后就不需要了
promise的简单用法
在es6中,promise终于成为了原生对象,可以直接使用。promise是异步编程的一种解决方案。解决了异步回调多层嵌套的问题。
promise状态的理解用new Promise实例化的promise对象有三个状态:resolved(fulfilled) rejected pending
promise的简单用法123456789101112131415161718192021222324252627282930313233343536373839// 封装一个方法run_a,当Math.random()取的值小于0.5时执行resolve,否则执行rejectvar run_a = function () { var _promise = new Promise(function(resolve, reject){ // 模拟异步 setTimeout(function () { var rand = Math.random() if (rand < 0.5) & ...
js基础之数组
数组简介数组的每一项可以保存任何数据类型new Array() 一个参数代表长度,两个及以上参数代表数组元素
数组常用的20+个方法:又复习到这,这二十多个方法你都牢牢掌握吗?数组的方法是最最基础的基础,但是有些方法不是很常用,很多人都会出错,这就奇怪了。
1.push(item) 可添加多个逗号隔开2.pop() 无参,删除最后一个,返回删除掉的元素3.unshift(item) 前面加一个,返回变化后的数组的长度。可添加多个,逗号分隔4.shift() 无参,删除第一个,返回删除的元素5.splice(index,) 拼接①arr.splice(开始下标,长度); 删除,返回删除的。②arr.splice(开始下标); 从下标开始删除,返回删除的。③arr.splice(开始下标,0,’aa’); 添加,在开始下标位置④arr.splice(开始下标,1,’aa’); 替换
6.reverse() 无参,倒叙7.sort(fn) 排序需要传递一个函数作为参数
123arr.sort(function(a,b){ return a-b;})
以上方法改 ...
青云志
青云志
徐霞客
无人扶我青云志,我自踏雪至山颠。若是命中无此运,亦可孤身登昆仑。红尘赠我三尺剑,酒看瘦马一世街。世人朝路乃绝涧,独见众生止步前。海到尽头天作岸,山登绝顶我为峰。如若东山能再起,大鹏展翅九万里。一入红尘梦易真,一朝悟透心境名。一朝悟道见真我,昔日枷锁皆云烟。天门将至百运开,拂尘轻笑问仙来。
高频面试题总结
HTML CSScss垂直居中
vertical-align: middle; display: inline-block(前提)
position: absolute; top: 50%; transform: translateY(-50%)
父元素:display: flex; 子元素: align-self: center; (align-self可以覆盖父容器align-item的属性)
响应式布局的实现方式和原理响应式布局就是让网站同时适配不同的手机和分辨率方式有:1.百分比布局:百分比布局是相对于父元素来说的,我们可以设置的属性有:margin padding width height,对于元素的font-size border是无法设置的。2.媒体查询:设置不同分辨率下的css样式从而适配不同的手机端。3.rem布局:根据html的font-size的大小设置每个元素的属性的大小是多少rem,通常需要先通过js动态改变html的font-size大小,或利用媒体查询先设置html的font-size大小。4.vw布局:css3引入的新单位,视口宽度是100vw,通 ...