随笔分类 -  JS

摘要:深拷贝:在堆内存中开辟一个存储空间来存储一个一模一样的克隆对象。浅拷贝:相反不在堆内存中重新开辟空间,仅仅复制栈内存中的引用地址,本质上依然指向的同一块存储空间。在我们的项目日常开发中,经常使用到深拷贝和浅拷贝,今天就跟大家分享几种深拷贝的实现方式:一、JSON.stringify();(深拷贝普通 阅读全文
posted @ 2023-04-24 14:10 阿彬~ 阅读(5070) 评论(0) 推荐(0)
摘要:web缓存主要指的是两部分:浏览器缓存和http缓存。 浏览器缓存一般指localStorage,sessionStorage,cookie等,主要用于缓存一些必要数据在客户端,有大小的容量限制。 http缓存主要是针对html,css,img等静态资源,常规情况下,我们不太会去缓存一些动态资源,因 阅读全文
posted @ 2023-02-02 14:19 阿彬~ 阅读(378) 评论(0) 推荐(0)
摘要:在日常的代码编写中,相信大家或多或少都接触过拥有庞大if else的项目代码吧,多重嵌套的if else在维护的时候真的很让人恼火,一个bug排查下来,感觉身体被掏空。接下来将介绍几种在某些特定场景下代替if else的思路,并增加我们代码的可读性。 一、短路运算 Javascript的逻辑或 || 阅读全文
posted @ 2022-12-30 11:28 阿彬~ 阅读(694) 评论(0) 推荐(0)
摘要:箭头函数的诞生,可以说给我们的工作带来了极大的便利,箭头函数很高级,可以规避this的问题,但有些场景却是不能使用箭头函数的,这些你都了解过吗? 一、箭头函数缺点 1、没有arguments,如果要用,可以用rest参数代替 const fn1 = () => { console.log('argu 阅读全文
posted @ 2022-07-11 16:55 阿彬~ 阅读(416) 评论(0) 推荐(0)
摘要:一、较短的if-else的空合并 (??) let maybeSomething; // LONG FORM if(maybeSomething){ console.log(maybeSomething); }else{ console.log("Nothing found"); } // SHOR 阅读全文
posted @ 2022-01-24 10:50 阿彬~ 阅读(85) 评论(0) 推荐(0)
摘要:一、防抖 概念:触发高频事件后n秒内函数只会执行一次,如果n秒内高频事件再次被触发,则重新计算时间 场景:等待用户输入完毕再进行搜索 思路:每次触发事件时都取消之前的延时调用方法 const debounce = fn => { let timeout = null; // 创建一个标记用来存放定时 阅读全文
posted @ 2021-07-23 15:12 阿彬~ 阅读(783) 评论(0) 推荐(0)
摘要:数组是js中最常用到的数据集合,其内置的方法也很多,熟练掌握这些方法,可以有效的提高我们的工作效率,也对我们的代码质量有很大影响。 一、创建数组 1、使用数组字面量方法 var arr1 = []; // 创建一个数组 var arr2 = [20]; // 创建一个包含1项数据为20的数组 var 阅读全文
posted @ 2021-01-26 14:03 阿彬~ 阅读(7150) 评论(1) 推荐(0)