摘要: 核心:循环次数少的放在外层,减少内层变量的操作次数 // 嵌套方式一 function first() { let startTime = new Date().getTime(); for (let i = 0; i < 100; i++) { for (let j = 0; j < 1000; 阅读全文
posted @ 2021-09-16 15:53 Noxus丶SJ 阅读(138) 评论(0) 推荐(1) 编辑
摘要: 假设我们要复制一个对象,如果不对其进行深拷贝,那么改变其中一个对象后,另外一个对象也会跟着改变 正常情况场景 let a = { age: 20 }; let b = a; b.age = 30; console.log(a.age); // 30 这并不是我们想要的效果,所以想要复制一个全新的对象 阅读全文
posted @ 2021-09-15 18:34 Noxus丶SJ 阅读(122) 评论(0) 推荐(0) 编辑
摘要: 闭包就是指有权访问另一个函数作用域中的变量的函数 观看了 JS 高级程序设计中的闭包后,发现可以描述的更具体,这个将在后期更新此篇文章 栗子 function foo() { var local = 1; function bar() { local++; return local; } retur 阅读全文
posted @ 2021-09-14 22:15 Noxus丶SJ 阅读(77) 评论(0) 推荐(0) 编辑
摘要: 防抖 触发高频事件后 n 秒内函数只会执行一次,如果 n 秒内高频事件再次被触发,则重新计算时间 <script> export default { data() { return { timer: null }; }, methods: { click() { clearTimeout(this. 阅读全文
posted @ 2021-09-14 19:15 Noxus丶SJ 阅读(104) 评论(0) 推荐(0) 编辑
摘要: 主要它们的判断规则不同 ==判断规则:值或者引用地址相同,那么它们就相等 判断规则:值或者引用地址相同,并且数据类型也要相同,那么它们就相等 如何确定它们的值是否相同? 相同类型的变量,值相等即可 不同类型的变量,则会进行隐式转换数据类型为相同的类型,在进行判断 转换为 Boolean 类型相关规则 阅读全文
posted @ 2021-09-09 08:35 Noxus丶SJ 阅读(82) 评论(0) 推荐(0) 编辑
摘要: JS 内存生命周期 分配你所需要的内存 使用分配到的内存(读、写) 不需要时将其释放、归还 什么是垃圾回收机制? 垃圾回收机制就是找出那些不再继续使用的值,然后释放其占用的内存空间。垃圾回收器每隔固定的时间段就执行一次释放操作 垃圾回收执行的方式有哪些? 标记清除 不能释放“进入环境”的变量所占的内 阅读全文
posted @ 2021-09-07 20:11 Noxus丶SJ 阅读(85) 评论(0) 推荐(0) 编辑
摘要: 事件循环机制 在事件循环中,每进行一次循环操作称为 tick,每一次 tick 的任务处理是比较复杂的,但关键步骤如下: 执行一个宏任务(栈中没有就从事件队列中获取) 执行过程中如果遇到微任务,就将它添加到微任务的任务队列中 宏任务执行完毕后,立即执行当前微任务队列中的所有微任务(依次执行) 当前宏 阅读全文
posted @ 2021-09-06 19:36 Noxus丶SJ 阅读(83) 评论(0) 推荐(0) 编辑
摘要: 主要使用以下文件 config.js:ajax 请求配置核心文件 loading.js:element-ui 请求加载动画 index.js:二次封装 config.js 请求并导出该方法,配置请求拦截器、响应拦截器 index.vue:调用 ajax 的示例页面 注意:推荐在 api 目录统一管理 阅读全文
posted @ 2021-09-06 08:46 Noxus丶SJ 阅读(76) 评论(0) 推荐(0) 编辑
摘要: 数据类型 基本类型 String、Number、Boolean、Null、Undefined 引用类型 Object、Array、Function 判断数据类型的方式 1. 使用 typeof typeof 'test' // string typeof 1880 // number typeof 阅读全文
posted @ 2021-09-03 14:53 Noxus丶SJ 阅读(61) 评论(0) 推荐(0) 编辑
摘要: 三者都是改变 this 指向的 api 用法 apply:xxx.apply(this, [arg1, arg2]) call:xxx.call(this, arg1, arg2) bind:xxx.bind(this, arg1, arg2) 区别 主要是传参方式和执行方式不同 apply、cal 阅读全文
posted @ 2021-09-03 08:40 Noxus丶SJ 阅读(72) 评论(0) 推荐(0) 编辑