- 博客(12)
- 收藏
- 关注
原创 JS 常见的排序算法
工作中算法不常用,但是排序经常用。因此在这里整理了几种JS中常见的排序算法。冒泡排序1、算法思想:判断两个相邻元素,大于则交换位置2、算法步骤从数组中第一个数开始,依次与下一个数比较并次交换比自己小的数,直到最后一个数。如果发生交换,则继续下面的步骤,如果未发生交换,则数组有序,排序结束,此时时间复杂度为O(n);每一轮”冒泡”结束后,最大的数将出现在乱序数列的最后一位。重复步骤(1)3、算法平均复杂度:n(n^2) function sortArr(arr) { //
2022-04-04 12:04:57
4219
原创 两个函数理解 防抖 节流
防抖 定义: 防抖函数 debounce 指的是函数在特定的时间,无论触发了多少次回调,都只执行最后一次。 假如我们设置了一个等待时间 3 秒的函数,在这 3 秒内如果遇到函数调用请求就重新计时 3 秒, 直至新的 3 秒内没有函数调用请求,此时执行函数,不然就以此类推重新计时。 附上代码如下:// fn 是需要防抖处理的回调函数// time是时间间隔function debounce(fn, time= 50) { // 通过闭包缓存一个定时器 timer let
2022-03-31 21:30:24
196
原创 闭包是什么
闭包是什么1、函数中返回了一个函数 function fn () { let a1 = 1 return function () { return a1 } }闭包存在的意义1、延长变量的声明周期2、创建私有环境let a ='123'function fn1(){ // 此处是一个私有环境即函数作用域 let b = '456' console.log(a)}console.log(b)// 此处执行
2022-03-29 22:34:39
548
原创 Promise.all和Promise.race 的理解和使用
一、Pomise.all的使用Promise.all可以将多个Promise实例包装成一个新的Promise实例。同时,成功和失败的返回值是不同的,成功的时候返回的是一个结果数组,而失败的时候则返回最先被reject失败状态的值。let promise1= new Promise((resolve, reject) => { resolve('成功')})let promise2= new Promise((resolve, reject) => { resolve('succ
2021-11-01 21:45:00
219
原创 js 轮询机制
概念 事件轮询 (eventloop) 是"一个解决和处理外部事件时将它们转换为回调函数的调用的实体(entity)" JavaScript 语言的一大特点就是单线程,也就是说,同一个时间只能做一件事。所有任务都需要排队,前一个任务结束,才会执行后一个任务。如果前一个任务耗时很长,后一个任务就不得不一直等着。任务队列 “ 任务队列 " 是一个先进先出的数据结构,排在前面的事件,优先被主线程读取。主线程的读取过程基本上是自动的,只要执行栈一清空," 任务队列 " 上第一位的事
2021-10-29 10:52:41
1022
原创 js 轮询机制
概念事件轮询 (eventloop) 是"一个解决和处理外部事件时将它们转换为回调函数的调用的实体(entity)"JavaScript 语言的一大特点就是单线程,也就是说,同一个时间只能做一件事。所有任务都需要排队,前一个任务结束,才会执行后一个任务。如果前一个任务耗时很长,后一个任务就不得不一直等着。任务队列“ 任务队列 " 是一个先进先出的数据结构,排在前面的事件,优先被主线程读取。主线程的读取过程基本上是自动的,只要执行栈一清空," 任务队列 " 上第一位的事件就会自动进入主线程。所有任务
2021-10-22 17:40:56
1775
原创 gulp的基本使用
gulp的基本使用安装首先确保你已经正确安装了nodejs环境。然后以全局方式安装gulp:npm install -g gulp然后本地安装:全局安装gulp后,还需要在每个要使用gulp的项目中都单独安装一 次。把目录切换到你的项目文件夹中,然后在命令行中执行:npm install gulp如果想在安装的时候把gulp写进项目package.json文件的...
2018-09-20 17:01:52
145
原创 strict 模式下不允许一个属性有多个定义
strict 模式下不允许一个属性有多个定义报错截图如下: 解决: vue+element-ui 项目,打包后在IE11上运行,报了 strict 模式下不允许一个属性有多个定义 这个错误,但在别的浏览器就没有事,了解后才发现打包压缩后的代码是在严格模式下运行的,而IE浏览器却对代码有一个严格的限制,不允许同一标签中有重复的属性。到此处大家要注意了,element-ui中的组件类...
2018-08-29 10:52:25
2216
1
原创 npm 安装node-sass报错问题解决方案
npm 安装node-sass报错问题解决方案执行:npm config set sass_binary_site https://npm.taobao.org/mirrors/node-sass/ 然后使用 淘宝镜像进行node-sass 的安装如下: npm install node-sass –save-dev –registry=https://registry.npm.taoba...
2018-08-15 11:01:09
2605
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人