- 博客(14)
- 收藏
- 关注
原创 JavaScript Event Loop 完全解析 —— 异步的底层真相
特性微任务宏任务触发时机每次宏任务执行后立即执行每轮 Event Loop 执行一个常见API优先级高低JS的异步执行顺序 = 同步 -> 微任务 -> 宏任务(1个) -> 重复循环。
2025-04-08 14:43:51
247
原创 深入理解 JavaScript 的防抖(debounce)与节流(throttle)——原理 + 手写实现 + 场景实战
在前端开发中,input 输入、滚动、窗口 resize、点击、鼠标移动...这些高频触发的事件,处理不好,极容易出现:页面卡顿接口狂发浏览器崩溃用户体验极差所以,防抖(debounce)和节流(throttle)这两个小工具,就变得特别重要。
2025-04-08 14:38:28
196
原创 有关高阶函数
什么是高阶函数:可以把函数作为参数传递给另一个函数 可以把函数作为另一个函数的返回结果1、函数作为参数:// forEachlet a = [1, 2, 3, 4, 5];function forEach(arr, fn) { for (let i = 0; i < arr.length; i++) { fn(arr[i], i); }}forEach(a, function (item, index) { console.log(item, inde
2022-04-14 15:13:11
446
原创 有关Promise
1、promise的语法const p = new Promise((resolve,reject )=>{ // resolve() //调用函数 调用以后当前promise对象的状态变成了fulfilled // reject() // 调用以后状态变成了rejected})console.log(p) //状态默认是pending2、promise的状态promise实例有两个属性, 1.state(状态) 2.resu...
2022-04-12 15:42:04
1483
原创 JS的几种排序方式
1、冒泡排序var a = [1, 3, 6, 3, 23, 76, 1, 34, 222, 6, 456, 221];function bubbleSort(array) { const len = array.length if (len < 2) return array for (let i = 0; i < len; i++) { for (let j = 0; j < i; j++) { if (array[j] > a
2022-04-12 10:16:55
13156
原创 有关算法的时间复杂度及空间复杂度
简单了解一下有关算法的时间复杂度和空间复杂度的定义:首先,时间复杂度:空间复杂度:注意:在无特殊条件的前提下,写代码的时候多数都是优先时间复杂度,空间换时间。...
2022-03-29 15:24:53
528
原创 有关数组扁平化的6种方法
1、递归遍历const a = [1, 2, [3, 4, [5, 6, [7]]]];const flatten = (arr) => { let resultArr = []; arr.forEach((item) => { if (Array.isArray(item)) { resultArr = resultArr.concat(flatten(item)); } else { resultArr.push(item);
2022-03-28 17:02:15
320
原创 有关JS数组的API
1、Array的构造器Array构造器用于创建一个新数组,当然我们可以直接使用对象字面量的方式创建一个数组,比如var a = [],但是,使用Array是有区别的,比如我想创建一个长度为6的空数组,如下:// 使用 Array 构造器,可以自定义长度var a = Array(6); // [empty × 6]// 使用对象字面量var b = [];b.length = 6; // [undefined × 6]ES6 新增的构造方法:Array.of 和 Array.from
2022-03-28 16:10:50
2435
原创 有关JS的深浅拷贝
前两篇文章有介绍过JS的数据类型,我们日常用的深浅拷贝,通常都是对于引用类型的值进行拷贝;拷贝顾名思义就是复制,内存中一共分为栈内存和堆内存两大区域,所谓深浅拷贝主要是对javascript引用类型数据进行拷贝一份,浅拷贝就是引用类型数据相互赋值之后,例obj1=obj2;如果后面的操作中修改obj1或者obj2,这个时候数据是会进行相应的变化的,因为在内存中引用类型数据是存储在堆内存中,堆内存中存放的是引用类型的值,同时会有一个指针地址指向栈内存,两个引用类型数据地址一样,如果其中一个发生变化另外一个
2022-03-18 09:50:36
1130
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人