
es6
pqxpq
带带
展开
-
一道promise输出题
【代码】一道promise输出题。原创 2023-05-29 09:16:36 · 147 阅读 · 0 评论 -
js垃圾回收机制各阶段问题以及解决方案
我们先要了解一个概念 全停顿(Stop-The-World),我们都知道 JavaScript 是一门单线程的语言,它是运行在主线程上的,那在进行垃圾回收时就会阻塞 JavaScript 脚本的执行,需等待垃圾回收完毕后再恢复脚本执行,我们把这种行为叫做 全停顿。试想一下,我们上面所说的垃圾清理算法在每次垃圾回收时都要检查内存中所有的对象,这样的话对于一些大、老、存活时间长的对象来说同新、小、存活时间短的对象一个频率的检查很不好,因为前者需要时间长并且不需要频繁进行清理,后者恰好相反,怎么优化这点呢?原创 2023-05-09 10:03:47 · 353 阅读 · 0 评论 -
Jpeg算法
压缩算法之所以有用的原因:人的眼睛并不完美,很多细微的东西观察不到,jpeg算法利用算法来去除这些细微的差别,视杆细胞和视锥细胞。使用jpeg算法的时候可以选一个叫’质量’的可变数值来决定压缩的程度,压缩过多的时候我们会得到有缺陷的方框,叫做膺像。1.在压缩矢量就是有棱角的图片的时候会得到明显的膺像,在压缩自然图片的时候效果很好,因为自然图片有许多光滑的纹理。会遍历图像的客个部分,并找到具有高频率的色度或亮度的像素频繁出现的区域,然后删除人眼难以感知的元素。然后用哈夫曼编码进行重构树重构。原创 2023-05-05 20:44:21 · 702 阅读 · 0 评论 -
微任务宏任务详解题目
并且await这句代码也是宏任务,只有await下面的代码才是微任务,这个时候我们就会输出C,接着是F,然后遇到了then,将then里面的代码添加到微任务队列中,最后遇到了H,这个时候我们的宏任务队列有E,微任务队列有B,G,我们先去清空我们的微任务队列,再去清空宏任务队列!假如说我们的宏任务执行得很快,100ms就执行完了,那么我们就会去轮询我们的任务队列,但是异步任务1到1s才会被加入到任务队列中!注意点:我们的异步任务1和异步任务2并不是直接放在任务队列里面,而是先挂载到我们相应的线程下面!原创 2023-04-18 09:35:40 · 227 阅读 · 0 评论 -
Symbol
ES6引入了一种新的原始数据类型 Symbol,表示独一无二的值。它是JavaScript语言的第七种数据类型,是一种类似于字符串的数据类型。如果我们直接加进去的话,我们可能会导致原有的属性被破坏。安全的像对象添加两个方法。js记忆我们的数据类型,usonb,you are so nubility。Symbol定义的对象属性不能使用for…通过这种方式创建这里s4等于s5,Symbol不能够计算!Symbol 的值是唯一的,用来解决命名冲突的问题。**symbol的内置属性 **原创 2023-04-10 09:26:33 · 355 阅读 · 0 评论 -
es6面向对象
如果有继承就一定会有super,代表父类构造函数,相当于把父类构造的属性给他!在构造的时候,我们先super()这里就先将父类new出来,所以父类先于子类创建出来!这里person.age=10,实际上是把10这个数字作为变量给set age这个函数,然后赋值给_age!全局只有一个object,构造我们的子类,必须找到原型链的最顶层,然后往下构造。这虽然是函数,一个方法,但是使用的时候和属性的使用方法是一样的!我们使用get和set将原始数据包装,来进行相应的逻辑!person里面放的是这个对象的引用!原创 2023-03-27 11:27:13 · 316 阅读 · 0 评论 -
promise的三个函数
收最快的那一个的状态。原创 2023-03-20 10:12:55 · 120 阅读 · 0 评论 -
异步,json,Promise
1原创 2023-03-14 08:29:18 · 209 阅读 · 0 评论 -
es6——异步编程
定时器和异步编程原创 2023-03-09 15:31:56 · 239 阅读 · 0 评论