![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
前端
WILLCSDNKK
这个作者很懒,什么都没留下…
展开
-
浅拷贝与深拷贝区别与实现
实现浅拷贝 浅拷贝中,浅拷贝只是拷贝了它在栈中存储的指针,它们指向的都是同一个堆内存地址,所以浅拷贝在某些情况会造成改变数据后导致别的另一份数据也同步被改变的情况; 1.for...in... 手动实现浅拷贝只需for...in...循环把oldobj里元素值遍历赋值给进新对象; 2.object.assign() 深拷贝的实现 深拷贝是直接将堆内存中存储的数据直接复制一份,不会有浅拷贝互相影响的问题。 1.递归实现 手动实现深拷贝只需封装一个函数,做一个是否为对象或.原创 2021-04-24 16:38:51 · 173 阅读 · 0 评论 -
JS的异步处理方案
1.回调地狱 const fs = require('fs'); fs.readFile('./1.txt','utf8',(err,result1) => { console.log(result1) fs.readFile('./2.txt','utf8',(err,result2) => { console.log(result2) fs.readFile('./3.txt','utf8',(err,result3) => { console.log(resul原创 2021-04-28 00:40:18 · 331 阅读 · 1 评论 -
内容水平垂直居中的几种方法
1.margin:auto法 原理:如果设置了绝对定位并且上下左右全部为0(不能只设置上左或者其他的任意两方向),那么他会填充整个父元素的所有可用空间,那么auto就有了作用,会平均分配剩余的空间 2.margin负值法 使用margin-top,margin-left,值各为width和height的一半。或者将transform:translate(-50%,-50%)实现 3.table-cell 4.利用flex 将父元素设置为display...原创 2021-05-11 22:28:00 · 370 阅读 · 0 评论 -
实现防抖节流
防抖动和节流本质是不一样的。防抖动是将多次执行变为最后一次执行,节流是将多次执行变成每隔一段时间执行。 防抖:触发高频事件后n秒内函数只会执行一次,如果n秒内高频事件再次被触发,则重新计算时间 解决方法:每次触发事件 时都取消之前的延时调用方法 <body> <input type="text" name="" id="in"> <script type="text/javascript"> function debounce(delay,cb){原创 2021-07-26 16:24:03 · 182 阅读 · 0 评论 -
圣杯布局以及双飞翼布局
圣杯布局以及双飞翼布局都是三栏布局的实现方式之一,只是实现方式不同而已 1.圣杯布局 1.将三者都 float:left , 再加上一个position:relative (因为相对定位后面会用到) 2.middle部分 width:100%占满 3.此时middle占满了,所以要把left拉到最左边,使用margin-left:-100% 4.这时left拉回来了,但会覆盖middle内容的左端,要把middle内容拉出来,所以在外围box加上 padding:0 200px 0 20原创 2021-08-01 17:13:04 · 252 阅读 · 0 评论