前端开发
文章平均质量分 78
记录分享,前端开发所见所学所想
飞鱼日记
有5年以上前端开发经验,热爱编程,积极向上,热爱分享,记录学习和工作笔记,希望广交朋友共同学习~
展开
-
一篇搞懂深拷贝和浅拷贝
1.定义深拷贝和浅拷贝最根本的区别在于是否真正获取一个对象的复制实体,而不是引用。假设B复制了A,修改A的时候,看B是否发生变化:如果B跟着也变了,说明是浅拷贝(修改了堆内存中的同一个值)如果B没有改变,说明是深拷贝(修改了堆内存中的不同的值)2.区别浅拷贝(shallowCopy) 只是增加了一个指针指向已存在的内存地址,仅仅是指向被复制的内存地址,如果原地址发生改变,那么浅复制出来的对象也会相应的改变。深拷贝(deepCopy) 是增加了一个指针并且申请了一个新的内存,使这个增加的指针指向这个原创 2021-02-03 23:59:36 · 187 阅读 · 0 评论 -
一篇彻底搞懂什么是函数防抖和节流,及应用场景
函数防抖和节流是优化高频率执行js代码的一种手段,js中的一些事件如浏览器的resize、scroll,鼠标的mousemove、mouseover,input输入框的keypress等事件在触发时,会不断地调用绑定在事件上的回调函数,极大地浪费资源,降低前端性能。为了优化体验,需要对这类事件进行调用次数的限制。1.防抖 (debounce)防抖,顾名思义,防止抖动,以免把一次事件误执行多次,影响性能,比如敲键盘就是一个每天都会接触到的防抖操作。应用场景登录、发短信等按钮避免用户点击太快,以致.原创 2020-08-24 15:54:05 · 1994 阅读 · 4 评论 -
前端常用数据算法js函数片段合集【持续更新】
1、数组去重function noRepeat(arr) { return [...new Set(arr)];}2、查找数组最大function arrayMax(arr) { return Math.max(...arr);}3、查找数组最小function arrayMin(arr) { return Math.min(...arr);}4、返回已 size 为长度的数组分割的原数组function chunk(arr, size = 1) {return Array原创 2020-08-13 19:29:41 · 842 阅读 · 0 评论 -
网站前端常用js效果整理【持续更新】
整理一些网站上常用到的js整理,原生js和jq的方法都有,大家用时自行判别1. 判断页面加载是否完成document.onreadystatechange = loadingChange;//当页面加载状态改变的时候执行这个方法. function loadingChange() { if (document.readyState == "complete") { //当页面加载状态为完全结束时进入 $(".loading").hide();//当页面加载完成后将l.原创 2020-08-13 18:16:26 · 667 阅读 · 0 评论 -
css3+js制作好看的时钟效果
css3+js制作好看的时钟效果<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <t原创 2020-08-10 16:15:41 · 272 阅读 · 0 评论 -
svg绘制向下图标动画
svg绘制向下图标动画效果展示css3代码.down { -webkit-animation: bounce 4s 2s infinite; animation: bounce 4s 2s infinite; color: hsla(0,0%,100%,.8); height: 34px; width: 34px; position: absolute; bottom: 10px; cursor: pointer}.down:hover { color: #fff原创 2020-08-10 00:04:57 · 377 阅读 · 0 评论 -
js判断移动端是ios或安卓
JS实现下面功能:首先判断是否为微信浏览器,然后在判断是ios还是安卓,同事执行不同的下载app的链接js是无法判断是否安装了某个App的,网上找的的什么设置延时执行,iframe等根!本!没!用!也看了一些大厂的如网易新闻,今日头条等还是需要先跳转到App store里如果你已下载App显示的事打开字样,如果未下载显示的去下载 function openApp() { var ua = window.navigator.userAgent.toLowerCase();原创 2020-08-08 23:55:33 · 299 阅读 · 0 评论 -
【前端常用js】jq tab切换
jq tab切换html <!-- html 主体--> <ul class="tab-hd"> <li class="active">切换1</li> <li>切换2</li> <li>切换3</li> </ul> <ul class="tab-bd"> <li>展示1</li&原创 2020-08-08 23:14:33 · 138 阅读 · 0 评论 -
linux安装jdk8详细步骤
总结下最近在玩linux时安装java的jdk1.8版Linux的使用相信大家都要用到java吧!在使用java前我们得先安装jdk以及配置环境变量等工作????下面小编给大家分享关于Linux安装jdk的详细步骤:1.准备工作Linux系统环境上官网下载jdk压缩包https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 如果嫌官网下载慢的话可以选择国内大厂的jdk镜原创 2020-08-06 14:10:24 · 14332 阅读 · 3 评论