自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(33)
  • 收藏
  • 关注

原创 【3.31】数组去重最终版本(考虑key乱序的对象以及数组和对象复杂嵌套关系)

【代码】【3.31】数组去重最终版本(考虑key乱序的对象以及数组和对象复杂嵌套关系)

2023-03-31 21:31:17 89

原创 【3.31】再次复盘 阿里相关

【代码】【3.31】再次复盘 阿里相关。

2023-03-31 21:29:19 96

原创 【3.28】React零碎知识汇总

在React类组件里,可以省略super,但如果用了super(),在super()和构造函数结束之前this.props()依然是undefined,因为在React会在。在React 中,类组件只要执行了 setState 方法,就一定会触发 render 函数执行,函数组件使用useState更改状态不一定导致重新render。– 在setTimeout,原生事件里是同步更新(React 18前),生命周期或者React合成事件里是异步。阻止合成事件间的冒泡,用e.stoppropagation()

2023-03-28 21:30:33 140

原创 【每日学习3.27】01背包/发布订阅模式/深入版手写bind

【代码】【每日学习3.27】01背包/发布订阅模式/深入版手写bind。

2023-03-27 23:52:29 98

原创 【3.15】阿里钉钉前端一面 复盘

判断,是否有Etag,有的话带If-None-Match向服务器发请求,如果没有Etag那就会判断是否有Last-Modified,有的话带If-Modefied-Since向服务器请求,服务器接收请求之后判断是否有更新,有的话就返回更新的,没有的话直接返回304,让浏览器读取缓存即可。,useMemo是缓存了一个值(或者对象啥的),页面重新加载时,本来按道理对象会重新生成,组件如果使用这个对象作props,会重新渲染,useMemo避免了这种不必要的重渲染,节省开销。

2023-03-23 22:19:06 149

原创 【突击】快速过一遍上届学长学姐的面经

学习

2023-03-20 01:07:17 83

原创 【准备面试】前端个人知识梳理(二)计网

复习计网

2023-03-13 16:52:36 86

原创 【准备面试】前端个人知识梳理(一)三大件

背书!

2023-03-13 00:31:46 198

原创 【leetcode每日】2023.1.26 - 2023.2.3

算法练习

2023-02-03 11:58:34 69

原创 【7.15】算法复习五 哈希

7.15

2022-07-16 15:32:39 80

原创 【7.12】算法复习四 堆/栈/队列

7.12

2022-07-13 18:41:21 68

原创 【7.10】算法复习三 二叉树

7.10

2022-07-10 22:00:48 366

原创 【7.8】算法复习二 二分

7.7

2022-07-08 14:05:26 75

原创 【7.6】算法复习一 链表

7.6

2022-07-06 18:09:21 131

原创 【React扩展】 React 18 新特性

想来想去 还是要好好补习一下React掘金搬运点文章5.13参考 https://juejin.cn/post/7094037148088664078发行时间 2022.3React 18 放弃了对ie11的支持旧项目升级: 先把依赖中的版本号改成最新,然后删掉 node_modules 文件夹,重新安装 npm -i新特性官方删除了这个报错:无法对未挂载(已卸载)的组件执行状态更新。这是一个无效操作,并且表明我们的代码中存在内存泄漏。新的 root API 支持 new concu

2022-05-13 18:10:13 1246

原创 【4.30】js数组随机排序

4.30js数组随机排序function randomsort (arr) { for (let i = 0; i < arr.length; i++) { let index = Math.floor(Math.random() * (arr.length - i)); [arr[index], arr[arr.length - 1 - i]] = [arr[arr.length - 1 - i], arr[index]]; // 数组里的某些元素可能

2022-04-30 21:53:41 307

原创 【4.29】补课 手写js六大排序

补课4.29直接插入排序function insert (arr) { for (let i = 1; i < arr.length; i++) { let current = arr[i] // 提前保存 let j = i - 1 // 之前的序列前部排序好了 假设插入了一个新元素 while (current < arr[j]) { arr[j + 1] = arr[j] // 不断让位 j-- } arr[j

2022-04-29 23:11:39 430

原创 【自学】4.25 Web Storage

每天写点玩玩4.25为了弥补 Cookie 的局限性,Web Storage 出现了,Web Storage 是 HTML5 专门为浏览器存储而提供的数据存储机制Local Storage 与 Session Storage 的区别两者的区别在于生命周期与作用域的不同。生命周期:Local Storage 是持久化的本地存储,存储在其中的数据是永远不会过期的,使其消失的唯一办法是手动删除;而 Session Storage 是临时性的本地存储,它是会话级别的存储,当会话结束(页面被关闭)时,存

2022-04-25 23:49:35 87

原创 【自学】4.24 Pubsub/x6

自学Pubsub发布和订阅 其实和redux差不多PubSub.publish(data?.operatorType || 'message', data)PubSub.subscribe('profiler', (_, message) => {})x6注册React组件Object.keys(operators).forEach(operatorName => { const Component = operators[operatorName]; Graph.r

2022-04-24 19:37:47 204

原创 【自学】4.23 raf

每天写点4.23raf基本使用 const total = 100000 //渲染十万条数据 const once = 20 const loopcount = total / once let currentcount = 0 let lidoc = document.querySelector("ul") function add () { const sec = document.createDocumentFragment()

2022-04-23 18:38:01 333

原创 【自学】4.22 防抖/节流

每天写点玩玩4.22简易debounce/throttle function debounce (fn, delay) { let timer = null return function () { if (timer) { clearTimeout(timer) } timer = setTimeout(() => { fn.apply(this, arguments)

2022-04-22 22:06:44 215

原创 【自学】4.21 git相关

每天写点玩玩4.21git的一些操作git initgit config user.name "xxx"git config user.email "xxx"git statusgit add .git commit -m "xxx"git remote -vgit remote rm origingit remote add origin xxxgit push -u origin master慎用cnpm 能用yarn就用yarn...

2022-04-21 23:05:48 196

原创 【自学】4.20 call/bind/apply

每天写点玩玩4.20call//call 请在浏览器中测试window.color = "red";var o = { color: "blue" };function sayColor () { alert(this.color);}sayColor.call(this);//redsayColor.call(window);//redsayColor.call();//redsayColor.call(null);//redsayColor.call(undefined)

2022-04-20 17:50:13 394

原创 【前端自学(10)】一些基本的CSS

文章目录1 一些基本的CSS2 总结1 一些基本的CSS画一个三角形.rect{ width: 0; height: 0; border-color: transparent transparent red transparent; border-width: 90px; border-style: solid;}<div class="rect"></div>画一条线.line { width: 900px; border-bo

2022-04-18 22:35:58 65

原创 【前端自学(9)】闭包和作用域链

文章目录1 闭包和作用域链2 总结1 闭包和作用域链闭包初步引入//以下是一些例子//个人理解:凡是外部变量接收一个return的函数,比如let a=hd(),那么和该函数同级的变量以及父级的变量都会被这个外部变量绑定(相当于这块内存空间直接给了外部变量)//凡是函数调用一次,都会开辟一块新的内存空间//没有被绑定的变量会被js垃圾回收机制自动清除function hd () { let n = 1 return function () { console.log(++

2022-04-13 23:09:23 920

原创 【前端自学(8)】字符串 Symbol相关

文章目录1 字符串 Symbol相关2 总结1 字符串 Symbol相关复习字符串的相关方法//字符串基础let str = 'apple,banana,orange 'console.log(str.includes('banana'))console.log(str.startsWith('banana', 6)) //可以带第二个参数console.log(str.endsWith('apple'))console.log(str.repeat(2))console.log(s

2022-04-05 14:17:20 182

原创 【前端自学(7)】Promise基础

文章目录1 Promise2 总结1 PromisePromise.all 和 Promise.raceconst promiseClick1 = () => { let p = new Promise((resolve, reject)=>{ setTimeout(()=> { var num = Math.ceil(Math.random() * 10); //生成1-10的随机数 console.log('随机数1:', num)

2022-04-04 22:04:02 707

原创 【前端自学(6)】数组相关

文章目录1 数组相关2 总结1 数组相关去重//Setfunction unique (arr) { return [...new Set(arr)]}//在res里查找arr[i]的index,如果结果是-1,说明arr[i]是新元素,推入function unique2 (arr) { let res = [] for (let i = 0; i < arr.length; i++) { if (res.indexOf(arr[i]) === -1) {

2022-04-04 17:47:49 1067

原创 【前端自学(5)】直接赋值 浅拷贝 深拷贝

文章目录1 直接赋值 浅拷贝 深拷贝2 总结1 直接赋值 浅拷贝 深拷贝直接上实例//定义一个比较复杂的对象let o = { id: 1, name: 'john', msg: { age: 18, msgarr: [10, 30], }, complex: [ { complexa: 30, complexarr: [1, 2, { oa: 2, ob: 3, oc: [4, 6] }], }, {

2022-04-04 01:41:39 987

原创 【前端自学(4)】JS对象相关

文章目录1 JS对象相关2 总结1 JS对象相关构造函数和原型基础//在es6之前,面向对象是通过构造函数实现的,Es6才有类的概念//复习 js创建对象的三种方式//1.利用Object()let obj1 = new Object()//2.利用对象字面量let obj2 = {}//3.利用构造函数function Star (uname, age) { this.uname = uname this.age = age this.sing = functio

2022-04-03 17:52:10 257

原创 【前端自学(3)】手写JS单链表

开始手写代码文章目录1 手写JS单链表2 总结1 手写JS单链表请自行在一个新的js文件中测试class Node { constructor(data) { this.data = data this.next = null }}class LinkedList { constructor() { this.head = null this.tail = null this.length = 0 } isEmpty () {

2022-04-01 16:03:16 807

原创 【前端自学(2)】Sass

记录一下自学内容文章目录1 Sass2 总结1 Sass2 总结

2022-03-31 21:10:14 406

原创 【前端自学(1)】Less

个人自学前端的一些笔记

2022-03-31 15:26:07 198

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除